Slashdot Mirror


Cryptol, Language of Cryptography, Now Available To the Public

solweil writes to mention that Cryptol, a 'domain specific language for the design, implementation and verification of cryptographic algorithms,' is now available to the public. Cryptol was originally designed for the NSA. It allows for a quick evaluation and continued revisions, and is available for Linux, OS X, and Windows.

10 of 140 comments (clear)

  1. Re:Wait... what? by Garridan · · Score: 2, Informative

    Because building hardware & software is profitable for very many companies; and getting something certified as secure enough for the NSA is pretty hard work. If they release the toolchain, it's one less thing to worry about leaking from the developer, and they have more access to better software.

  2. Re:Kudos to NSA by collinstocks · · Score: 5, Informative

    Just a correction: Regardless of who developed this (there seems to be some disagreement), nobody turned it over to the public domain. Read the license agreement: it says that you are not allowed to even create derivative works, nor redistribute the program to multiple sources, nor use it for commercial purposes.

  3. Re:Wait... what? by bhima · · Score: 3, Informative

    There is no such thing as trusted private encryption. Effective secure encryption is astoundingly complicated and you can not devise effective encryption in a vacuum. Lots of companies show us ineffective untrustworthy encryption which they develop in secret and which fail in short order... like CSS which is used on DVDs or the DRM in popular games and other digital media. Haven't you read folks on Slashdot mocking them for it?

    So the best way is do everything out in the open and have people find the weakness in it before it goes into production. Because once it goes into production you don't need to be code breaker to enjoy the stunning stupidity of the fools that rely on private encryption... you only need to be able to find the app with google and download it.

    Have a look at look at the ongoing contest for SHA-3. It's been reported here I think. Or you could the about how they came up with AES.

    Here's the zoo: http://ehash.iaik.tugraz.at/wiki/The_SHA-3_Zoo

    As a side note: Contests and prizes are remarkably effective method of spending the public's money for public good... as long as the results are open and patent free.

    --
    Nothing in the world is more dangerous than sincere ignorance and conscientious stupidity.
  4. Re:Lack of Functionality by Dun+Malg · · Score: 4, Informative

    FTFA: "The open version does not compile to VHDL, C/C++, or Haskell, and does not produce the formal models used for equivalence checking."

    So does this mean the open version (trial version) which we might have access to does not do much of what it is touted to be good for?

    Just another advertisement for a commercial product methinks. Maybe cool, but still a slashvertisement.

    - Toast

    Yep. Two lines down from the above quote it states:

    "Contact Galois to obtain a full-featured version for evaluation."

    It's classic crippleware. Free version doesn't do anything useful, and the "full-featured" version costs money and uses a dongle or something.

    --
    If a job's not worth doing, it's not worth doing right.
  5. Re:Kudos to NSA by Chyeld · · Score: 4, Informative

    There are infinitely many prime numbers.

    The oldest known proof for the statement that there are infinitely many prime numbers is given by the Greek mathematician Euclid in his Elements (Book IX, Proposition 20). Euclid states the result as "there are more than any given [finite] number of primes", and his proof is essentially the following:

    Consider any finite set of primes. Multiply all of them together and add 1 (see Euclid number). The resulting number is not divisible by any of the primes in the finite set we considered, because dividing by any of these would give a remainder of 1. Because all non-prime numbers can be decomposed into a product of underlying primes, then either this resultant number is prime itself, or there is a prime number or prime numbers which the resultant number could be decomposed into but are not in the original finite set of primes. Either way, there is at least one more prime that was not in the finite set we started with. This argument applies no matter what finite set we began with. So there are more primes than any given finite number.

  6. Re:Kudos to NSA by pointsofdata · · Score: 2, Informative

    While I am no expert in the area, nor do I know a huge amount about mathematics, wikipedia says that there are:2,220,819,602,560,918,840 primes below 10^20, which is 20 digits long. Considering that the largest known prime is almost 13 million digits long,and most of these numbers are unimaginably vast, it appears that it is not trivial to find the prime factors of a number. For instance, If a computer can test 10 billion primes a second (which is more than a consumer grade computer can (I think)), then it would take ~2 billion seconds to go test all the primes from 2 to the 10^20. While this would be far faster on a supercomputer, if all primes up to 2^(43,112,609) â' 1 are taken into account, it is not hard to appreciate that this will take a huge amount of time.

  7. Re:Kudos to NSA by 644bd346996 · · Score: 2, Informative

    It's not so hard to factor a 32-bit number with a 64-bit computer. It is very hard to efficiently factor a 2048-bit number with a 64-bit computer. Even if you had a list of all prime numbers that can be expressed in 2k or fewer bits, streaming all that data to your CPU would take a lot of bandwidth.

  8. Re:Kudos to NSA by Anonymous Coward · · Score: 1, Informative

    That's from the definition of a prime number. Take any natural number N. Either (1) N is prime, or (2) N is divisible by a prime number (it's not prime, i.e. it's composite: the product of two or more prime numbers).

    Euclid is using this fact to show that the original finite set does not contain all primes, because either that original set did not contain N, or it did not contain a prime factor of N. Hence, no matter how many primes you find, there will always be more primes.

  9. Re:Kudos to NSA by akaariai · · Score: 2, Informative

    The short answer is that there is just too many primes to list. There is about x/log(x) prime numbers smaller than x. If you have a 512 bit number then you have about sqrt(2^512) / log(sqrt(2^512)) numbers to check. So, there is 1.5 * 10^75 numbers you need to list. This is simply impossible. Moore's law will not help here, as adding one bit to the number to check about doubles the search space. That is, after a year of you can check a number that is just one bit larger!

  10. Free But Shacked - The Java Trap by jbn-o · · Score: 2, Informative

    Yes, that program would be free but see "Free But Shackled - The Java Trap" for more on why this situation is not desirable.