Bitcoin Forum

Bitcoin => Project Development => Topic started by: PremiumCodeX on February 26, 2017, 07:44:59 PM



Title: What's the most advanced symmetric encryption?
Post by: PremiumCodeX on February 26, 2017, 07:44:59 PM
Let us say I want to use a simple symmetric encryption in a board to send a message to someone. The other person and I own the same key, I assume no one has obtained it, but I do not want other people reading the board to be able to crack the encryption very soon. What is the most advanced encryption to do that?

I studied about DES, AES, Blowfish, Twofish, RC5, CAST5, IDEA. Any else which is worth to learn?


Title: Re: What's the most advanced symmetric encryption?
Post by: cloverme on February 27, 2017, 04:25:41 PM
Let us say I want to use a simple symmetric encryption in a board to send a message to someone. The other person and I own the same key, I assume no one has obtained it, but I do not want other people reading the board to be able to crack the encryption very soon. What is the most advanced encryption to do that?

I studied about DES, AES, Blowfish, Twofish, RC5, CAST5, IDEA. Any else which is worth to learn?

I'd use OTP (One time pad), it's simple, fast, and unlikely anyone will crack it for the use-case you stated. The requirement though is that the key is kept secret. If you remove the requirement for "simple", go with AES256 as it is widely considered by most security experts to be the most secure today.

It's been theorized that with a cryptographically secure random key, the OTP method is suggested to be uncrackable.
https://en.wikipedia.org/wiki/One-time_pad
Example in C: http://codereview.stackexchange.com/questions/41748/small-one-time-pad-encryption-program
Python Example: https://breakingcode.wordpress.com/2010/02/17/one-time-pad-encryption-in-python/

Simple tool: http://www.braingle.com/brainteasers/codes/onetimepad.php



Title: Re: What's the most advanced symmetric encryption?
Post by: legendster on February 27, 2017, 04:30:53 PM
Let us say I want to use a simple symmetric encryption in a board to send a message to someone. The other person and I own the same key, I assume no one has obtained it, but I do not want other people reading the board to be able to crack the encryption very soon. What is the most advanced encryption to do that?

I studied about DES, AES, Blowfish, Twofish, RC5, CAST5, IDEA. Any else which is worth to learn?

Bcrypt is kinda based on Blowfish, just pointing it out to make sure you glance over it.

If you are going to consider asymmetric you might wanna take a look at One Time Pad (OTP).



I'd use OTP (One time pad), ... it's been theorized that with a cryptographically secure random key, the OTP method is suggested to be uncrackable.

Exactly! Consider looking into it. I am personally just beginning to scratch the surface & learn these things.


Title: Re: What's the most advanced symmetric encryption?
Post by: PremiumCodeX on March 01, 2017, 08:34:00 PM
Bcrypt is kinda based on Blowfish, just pointing it out to make sure you glance over it.

If you are going to consider asymmetric you might wanna take a look at One Time Pad (OTP).

I'd use OTP (One time pad), it's simple, fast, and unlikely anyone will crack it for the use-case you stated. The requirement though is that the key is kept secret. If you remove the requirement for "simple", go with AES256 as it is widely considered by most security experts to be the most secure today.

It's been theorized that with a cryptographically secure random key, the OTP method is suggested to be uncrackable.
https://en.wikipedia.org/wiki/One-time_pad
Example in C: http://codereview.stackexchange.com/questions/41748/small-one-time-pad-encryption-program
Python Example: https://breakingcode.wordpress.com/2010/02/17/one-time-pad-encryption-in-python/

Simple tool: http://www.braingle.com/brainteasers/codes/onetimepad.php



Thank you for your inputs! I accidentally forgot to add, but I studied about OTP, too. I studied that although it is considered theoritically uncrackable, in practice no key can be kept in perfect secret. So, it is very good in theory, but I wonder if there are better encryptions that work better in PRACTICE.

As for AES256: I studied a bit about AES, but not much about AES256. However, I found it in NSA Suite B. What does that mean to us?


Title: Re: What's the most advanced symmetric encryption?
Post by: cloverme on March 01, 2017, 09:27:01 PM
Thank you for your inputs! I accidentally forgot to add, but I studied about OTP, too. I studied that although it is considered theoritically uncrackable, in practice no key can be kept in perfect secret. So, it is very good in theory, but I wonder if there are better encryptions that work better in PRACTICE.

As for AES256: I studied a bit about AES, but not much about AES256. However, I found it in NSA Suite B. What does that mean to us?

Not much really as far as NSA is concerned, it just means it meets their standard for classified data. What you really want to look at is FIPS 197 from NIST to get the details on AES. Government DoD programs for unclassified (and occasionally classified) data will reference a set a standards, typically FIPS.
http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf

To learn about the practical applications of how a cryptographic module may be used for government systems, the requirements are in (more so for US Government DoD programs) FIPS 140-2.
http://csrc.nist.gov/publications/fips/fips140-2/fips1402.pdf

So, I used to work for NASA and now deal with other government entities, in practice, AES256 is used to encrypt data, the pragmatic approach for exchange is to use PGP (OpenPGP for example). Just be careful with exchanging the public key to avoid man in the middle attacks.