

Daniel Mullarkey wrote: How much is this encryption algorithm potentially worth if I patent it? Not much, since there are already high quality encryption methods available at no cost.





Well, to address both replies, the core function headers look something like this:
Public Function Encode(ByVal UnencodedValue As Integer, ByVal KeyValue As Integer, ByVal MinimumValue As Integer, ByVal MaximumValue As Integer) As Integer
Public Function Decode(ByVal EncodedValue As Integer, ByVal KeyValue As Integer, ByVal MinimumValue As Integer, ByVal MaximumValue As Integer) As Integer
Keep in mind that UnencodedValue and EncodedValue can range anywhere from MinimumValue to MaximumValue and that the KeyValue can range anywhere from MinimumValue + 2 to MaximumValue.





Encryption is not only (and not mainly) about hide your data behind numbers. It can be smart but that's not nearly enough...You have to think about the data exchange between the side encrypting and the other that decrypting the data. For every encryption has helpers  these are the keys  and those helpers are have to pass (or be presented) on both side. You method signatures are telling nothing about that  just from this we can't tell nothing about, how your encryption is good. It also tells nothing about it speed of execution...
I'm not questioning your powers of observation; I'm merely remarking upon the paradox of asking a masked man who he is. (V)
modified 23Mar14 10:49am.





Well, I can say that the core methods involve 10 lines of code, one with a conditional (if...then) recursion that at best only occurs once per original use and the rest involves conditional (if...then) mathematics at three levels, thereby making it very quick and very fast. Besides, ever heard of lossless compression? Well, I might as well have created perpetual lossless, keybased, encryption. Keep in mind that the encryption algorithm is symmetrical, so the very idea of having public keys would be a bad idea. The core of my encryption algorithm is essentially a block cipher in which the unencrypted value does not grow or shrink in size when encrypted. Also, keep in mind that it can not only encrypt bulk data, but it can also use bulk keys. And one day I will show that I can deliver on the goods. I just have to find a way to afford to pay LegalZoom $1,000 to patent it.
"In cryptography, a block cipher is a deterministic algorithm operating on fixedlength groups of bits, called blocks, with an unvarying transformation that is specified by a symmetric key. Block ciphers are important elementary components in the design of many cryptographic protocols, and are widely used to implement encryption of bulk data."
Quoted from Wikipedia from Block cipher





I'm not really interested in the details of your code, what I'm trying to tell you that your core methods are just the core...It's a very good thing that it performs well, however the recursion is always turn a red light on with me...That kind of methods need intensive test with different kind of data...
Daniel Mullarkey wrote: encryption algorithm is symmetrical According your previous post  with the method signatures  it's true only if you have key, min and max values...So still you have to consider how do you share that info between the parties...
So bfore you spend that $1000, try to fill all the gaps (and may be more that I listed). You may look into existing protocols for info how they build...
http://en.wikipedia.org/wiki/Cryptographic_protocol[^]
I'm not questioning your powers of observation; I'm merely remarking upon the paradox of asking a masked man who he is. (V)
modified 23Mar14 11:04am.





All encryption is lossless? You have to be able to undo it back to the original :P





I suspect you really need to study the principles of encryption. Any encryption system worth its salt should be language neutral, and able to handle any stream of bytes rather than just integers.





Bytes can be transformed into integers easily enough using any modern programming language and since I have already succeeded with strings and characters, bytes are on their way. :8)





Daniel Mullarkey wrote: Bytes can be transformed into integers easily enough using any modern programming language And how do you decide how many bytes to make up each integer? There is no correspondence between the two types. In reality any encryption/decryption system works purely on a stream of bytes, the actual values of individual groups has no relevance.





Would you believe that I used conversion type functions?





I would believe anything, but what does that have to do with producing an efficient and valid encryption algorithm?





Nothing, in and of itself. What makes my encryption algorithm unique is that unlike other encryption algorithms, the set of all unencrypted values, encrypted values, and key values, are electronically indistinguishable from one another, while the each unencrypted value its corresponding encrypted value are still uniquely different from one another.
modified 5Apr14 10:21am.





So you keep telling us, but that proves nothing. Your algorithm needs to be tested to destruction by experts in the field, before anyone is going to pay you any money for it.





That point I will concede. Nonetheless, I was planning on licensing it out, rather than selling the patent wholesale.





Daniel Mullarkey wrote: I was planning on licensing it out Well you still have the same problem. Who do you think is going to want to licence an encryption system without any evidence of its efficacy?





It's fine to use int as a shortcode for 'group of 4 bytes' imo, that's what int means in pretty much every modern environment.





I understand that, I'm not sure that OP does.





I'd have to agree with the conclusions here and on Google[^]  the description is not enough to evaluate the value of your algorithm, and proprietary closedsource encryption algorithms are never a good idea. Since there are perfectly valid free and opensource algorithms available which have undergone years of intensive analysis, the chances of getting anyone to switch to your new, unproven algorithm are practically zero, even if you gave it away.
Daniel Mullarkey wrote: The algorithm uses carefully calculated mathematics to give the appearance of gibberish until it is decoded with the proper key or combination of keys.
As Arne Vajhøj said in your Google thread[^], that's practically the definition of encryption.
"These people looked deep within my soul and assigned me a number based on the order in which I joined."
 Homer





Most or perhaps all of your description is exactly what all encryption algorithms not only do but must do to be encryption algorithms in the first place.
Other than that if you cannot patent your encryption algorithm then it is worth nothing. Or at least worth nothing more than whatever snake oil your sales people can get from it.
http://www.networkworld.com/columnists/2001/0827schwartau.html[^]
If it can be patented then do so with a small market release and then use sales from that to patent/protect it in other places. Or just sell it to someone who already does it.





All it can get you is street cred; you won't make any money from it directly, but it could get you your foot in the door at some large corporation.
You'll never get very far if all you do is follow instructions.





A closed source encryption algorithm is worth pretty much nothing, because there's no way to evaluate how strong it is. So there's no way we can answer this question without seeing the code, which obviously you can't share because it would invalidate a patent application if it were in the public domain.
An encryption algorithm with no linkage between blocks is relatively weak, because an attacker can take blocks in isolation and generate parts of the key, particularly if he knows what some of the content is. If your key is long enough then it becomes a onetime pad which is unbreakable, but you've just deferred the problem to how to exchange keys securely.
If your algorithm is weaker than DES then I doubt it's worth anything. However, having your name on a patent could give you some industry kudos and make it easier to get a good job or consultancy work.





In short, it is designed to compete with PGP. Even the keys themselves can be encrypted with my algorithm, by using the same key block or another key, thereby making it more difficult to intercept a key.





I wonder what optimization algorithm should be used for such a problem:
x: independent variable
y: dependent variable
For y = f(x), find all x such that:
sum of y is > p where p is a positive integer
sum of y is the minimum of all sums that are greater than p





There is important information missing:
1. what types are x and y?
2. what are valid ranges for x and y?
3. what do you mean by "sum of y"? For any given x, there is only one y  what is it that you sum up?
4. what are the properties of f()? E. g. is it monotonous, continuous, continuously differentiable? Can you even give an exact definition? Is it even a function? You do not state as much!





Myself I suspect that the most important piece of information missing is which school class this is for.





@jschelll  sorry to disappoint. Its been many years since I left college which is probably why I'm finding it hard to write a generalized statement for the problem I'm facing!!!





Let me clarify my question:
x: is a discrete random variable
y: is a discrete dependent variable that follows count data model
y is a function of x.
Both x, y are both finite positive integers
Question is:
For a given p: find all x (i.e., x1, x2, ... , xi) such that
y1 + y2 + ... + yi > p
and
(y1 + y2 + ... + yi) is the smallest sum of all combinations of y's > p





This looks a lot like a variation on the knapsack problem[^]
That could suggest a strategy.





Let me clarify my response: Your question doesn't make sense, not in the original posting nor in this 'clarification: you are seeking the combinatorial optimum soultion in an infinite search space, and that is impossible to solve. You must restrict that search space to a finite set of (x,y) pairs, before the question even starts to make sense!





I have been interested in Decision Tables [^] a long time, and lately I found myself wanting to do some exploratory programming to create a Decision Table UI, and parse it, and crank out a bunch of complex logical assertions in a form that would be useful for creating a set of "business rules," statemachines, languageparsers, etc.
I suspect some of you "oldtimers" here have experience with decision table software, and theory.
The most interesting aspect of decisiontable theory, to me, is the analysis of a set of complex logical statements to see if there are ambiguities, contradictions, or "incompleteness."
I don't quite know how to conceptualize the dynamics of the process of logical verification; I'm posting this message to just ask for some pointers to any resources you are aware of for theory or algorithms useful for this.
I'm not looking to find code, at this point. I have been searching on the web, and have been examining the various commercial software packages for Windows for decision tables (pricey !). Nothing yet has really given me any ideas on the theory/algorithms for logical "provability."
thanks, Bill
“But I don't want to go among mad people,” Alice remarked.
“Oh, you can't help that,” said the Cat: “we're all mad here. I'm mad. You're mad.”
“How do you know I'm mad?” said Alice.
“You must be," said the Cat, or you wouldn't have come here.” Lewis Carroll





I have no idea (always a good start for an answer), but you may be interested in BDDs[^] as well (because they are often a good way to store and manipulate boolean functions).





Many thanks, Harold, that's an excellent resource.
After posting this message, memory came back to me of studying Truth Tables, around 1982, when I was bored out of my mind in the first year of a doctoral program in social science.
Another issue that interests me is a question of heuristic ordering of logical comparisons in order to optimize computation ... given you have a compiler, like C#, that suspends evaluation "smartly."
So, the question of "who's on first ?" is very interesting, in that context: I use the term "heuristic" since I think that the information a programmer has is, often, which one, or a few, tests are known to be very frequent, and which other tests are estimated to be less frequent.
For very complex sets of logical conditions, given frequency information on each possible condition's occurrence, it's interesting to consider what might be involved in producing code that's optimal: and what happens if, over time, those probabilities fluctuate in regular "clusters" (modes). So that, in State #1 you want one chunk of code, and in other States #n you want other chunks.
Do I make sense ? Wait, no, please ... forget I asked that
“But I don't want to go among mad people,” Alice remarked.
“Oh, you can't help that,” said the Cat: “we're all mad here. I'm mad. You're mad.”
“How do you know I'm mad?” said Alice.
“You must be," said the Cat, or you wouldn't have come here.” Lewis Carroll





What sort of aspects do you want to consider?
For example, if you assume uniform cost of all tests/branches, then the obvious order is in decreasing order of probability.
If the cost is slightly more realistic and based on the fraction of mispredictions (assuming the branch is random but biased), then .. I'm not sure. The total cost (ie average time spent in the tests) would be approximated as F(i) = C(i) + (1P(i)) * F(i + 1) and F(n) = 0 where P(i) is the probability of the ith branch being taken and C(i) = 0.55 e^{(8 (P(i)0.5)2)}  0.04 (that's not the best approximation of the cost of a branch ever, but it's the best I could come up with in a couple of minutes).





Recently while looking for Braille characters as images, I discovered a rather strange thing  there were many, many websites that taught Braille, but I could not find any that had all of its characters as separate image files, let alone in one place.
In order to fill this gap, I went ahead and created an open source project on SourceForge BrailleAlphabetGenerator hoping it would be useful for someone. The intention was to keep the image parameters customizable.
I am seeking feedback from all of you on how to improve the project  code, visual, or anything else (except perhaps, 'Why not use Unicode?').
Thanks much in advance for your feedback.






Thanks for showing me the right place. Moved it there.





Hi, I am working on this project that requires a base protocol to be developed through (sound)whistle patterns. This project is meant to have an alternative for large area communication not using wifi or Bluetooth or any such technology that requires some additional circuitry overheads, we just need sound base transmission and receiver for sound so we decided to use whistle patterns as protocol that will use different wavelengths/patterns. My concern is patterns may come randomly and I want to search it within database for right match of pattern with efficiency, since it is a sound pattern how do I store it and what is the right approach for searching through it. Also if any garbage then how to identify it well in advance before search even. Patterns are nothing but commands, information and even at times signals(Normal functioning, some Event occurred, Abnormal condition) Algorithm that I write should generate whistle with some starting point that marks it as valid may be for receiver to know that next is actual data. Whistle sent may have information about device from which it is coming and other information every time it sends with end of message to it. I am sorry if this is not very clear but this is what I have. Thanks! Rahul Joshi





The MP3 algorithm will reduce the amount of sound data you need to process, by eliminating sounds the human ear can't hear. So although it's a lossy compression method, it accurately reproduces the original signal.





Thank you for your help, I will research more on this. We actually want to study send/receive of both audible and nonaudible (just to see also possible effect of it on birds/animals) if we want to use it should not cause any harm to environment. Anyways thanks for your comment.





I need to find the shortest path between two points in a maze using recursion. the maze is represented by a twodimensional array of integers. You can walk through cells in the array if their values are different than 1. In addition, if there are some paths with the same length, the algorithm should find the path with the highest values in the array.
I thought about an algorithm that checks all the possible paths, but I need something more efficient.
thank you!





Homework?
Did you done anything by yourself so far?
Let us see your code...
I'm not questioning your powers of observation; I'm merely remarking upon the paradox of asking a masked man who he is. (V)






I think this should be common problem in Computer science.
I have a data like this
List<Map<Integer,List<String>>> Qdata = new ArrayList<Map<Integer,List<String>>>(); List<Map<Integer,List<String>>> Tdata = new ArrayList<Map<Integer,List<String>>>();
List<String> Qg1 = Arrays.asList("C", "A", "PC", "R");
List<String> Qg2 = Arrays.asList("DQ", "EQ", "KC", "AC");
List<String> Qg3 = Arrays.asList("KQ", "AT");
List<String> Qg4 = Arrays.asList("KQ", "AT", "DQ", "KC","AC","KQ", "AT", "KC","AC","KQ", "AT", "DQ", "KC","AC");
List<String> Qg5 = Arrays.asList("KQ", "AT", "DQ", "KC","AC");
List<String> Qg6 = Arrays.asList("KQ", "AT", "DQ", "KC","AC");
List<String> Qg7 = Arrays.asList("AC","KQ", "AT","AT", "DQ", "KC","AC");
Map<Integer,List<String>> Qmap = new HashMap<Integer, List<String>>();
Qmap.put(1, Qg1);
Qmap.put(2, Qg2);
Qmap.put(3, Qg3);
Qmap.put(4, Qg4);
Qmap.put(5, Qg5);
Qmap.put(6, Qg6);
Qmap.put(7, Qg7);
List<String> Tg1 = Arrays.asList("C", "A", "PC", "?");
List<String> Tg2 = Arrays.asList("KQ", "AT","DQ", "EQ", "KC", "AC");
List<String> Tg3 = Arrays.asList("AT", "DQ", "KC","AC");
List<String> Tg4 = Arrays.asList("KQ", "AT", "DQ", "KC","AC","KQ", "AT", "KC","AC");
List<String> Tg5 = Arrays.asList("KQ", "AT", "DQ", "KC","AC");
List<String> Tg6 = Arrays.asList("KQ", "AT", "DQ", "KC","AC");
List<String> Tg7 = Arrays.asList("AT","AT", "DQ", "KC","AC");
List<String> Tg8 = Arrays.asList("AC");
List<String> Tg9 = Arrays.asList("ACL","AC","C","A","PC");
Map<Integer,List<String>> Tmap = new HashMap<Integer, List<String>>();
Tmap.put(1, Tg1);
Tmap.put(2, Tg2);
Tmap.put(3, Tg3);
Tmap.put(4, Tg4);
Tmap.put(5, Tg5);
Tmap.put(6, Tg6);
Tmap.put(7, Tg7);
Tmap.put(8, Tg8);
Tmap.put(9, Tg9);
Qdata.add(Qmap);
Tdata.add(Tmap)
want to match Qdata with Tdata, the tricky part here is, if you observe the data
Qg3+Qg2 forms Tg2
Tg4+Tg3 forms Qg4 with "kQ" missing between Tg4 and Tg3
Tg8+Tg9 forms Qg7
and with the rest, it is pretty straight forward. I don't know how to deal with this tricky part.
I used map to store the data because it is more desired for the algorithm to finds matching in the same position in Tdata and Qdata like
Qg5 has a complete match with Tg5 Qg6 has a complete match with Tg6
The final ideal output that I expect in this case is:
Qg1 matches with Tg1 with a wild card("?") (some penalty for wild card)
Qg3+Qg2 matches Tg2
Qg4 matches Tg4+Tg3 (some penalty for missing word
Qg5 has a complete match with Tg5
Qg6 has a complete match with Tg6
Qg7 matches with Tg8+Tg9 (penalty)
and penalty for extra Tg9.
I already tried longest common subsequence and needleman wunsch algorithms they are good in aligning with gaps but I don't know how to mix two parts and match them like the tricky part I mentioned and how to teach algorithm when to mix parts and start matching and when not to?
Sorry for my bad english
I'm currently coding in java.
Any suggestions will very much keep me alive and get going.
Thanks in advance





I have a DAG of N nodes ( say million ) that I will querying for connectivity of two nodes [ isConnected(a,b} ]. I will be querying the DAG M ( say million ) times. Is there a way to optimize the process?
Here are the best approaches that I could come up with.
BFS = O( M * N )
Dijkstra = O( M* E* log N)
Is there any other better approach for this process ?





Dear all,
I am trying to do dual axis solar tracker with seasonal tilt.
Necessary Document:
1)Below links gives us calculation sun elevation/ azimuth angle.
http://www.nrel.gov/midc/spa/[^]
2)i am using Inclinometer to determine actual motion of tracker
Questions:
1) can someone give me algorithm flowchart for Dual axis solar tracker.
2)Dual axis tracker will move either horizontal/ vertical axis .How/when to set motion of motor along its axis.
3)what are the angle we need to taken consideration for calculation.





Hello, I have a variation of the weighted activity selection problem I could use some help with. The problem is that there are activities that have a start time, finish time, and profit. I need to find the maximum profit achievable with the variation that there must be more "short" activities used than "long" activities. Where a short activity is an activity with duration less than 5 (finish time  start time). I have solved the problem without the variation, not sure how to implement the restrictions. This is homework so i am only looking for help with the recursion.





"...there must be more "short" activities used than "long" activities."
In the recursive step (where I assume you add another activity), just skip adding "long" activities when the number of short activities is less than or equal to the number of long activities minus one.





Presumably you are picking the best solution based on the final weight score.
And presumably you have an idea of what "more" means.
Then while spanning the graph you keep track of a count for long and short. Then at the end you provide an additional weight value based on the "more" calculation. So for example if you just need to do 'short > long' for the comparison then you might add a weight of '5' to the total if that is true. Or if you need to do a difference between long and short then you would multiple that difference by '5' and add it to the score. For that latter solution you should consider if you want to deal with a negative difference or not.





Hi I am in a college programming class and I am kind of confused how to write this pseudocode.
It says "Write the pseudocode for problem 92.5"
92.5
Prompt the user to input a temperature in the Fahrenheit scale. Then display its equivalent in the Celsius scale. Repeat until a temperature of 9999 is entered.
Example Preudocode:
INPUT length, width
LET area = length * width
OUTPUT area
or
LET count = 1
LET total_area = 0
DO WHILE count < = 4
INPUT length, width
LET area = length * width
LET total_area = total_area + area
LET count = count +1
LOOP
OUTPUT total_area





What exactly are you confused about? What have you tried so far?
The difficult we do right away...
...the impossible takes slightly longer.





