Friday, September 6, 2013

Throwing an Eliptic Curve Ball

Defeatist Attitudes

The hullabaloo around the pervasive NSA and GCHQ snooping is still ongoing.  Nevertheless, the common public is indifferent, since they don't understand it and feel that they cannot do anything about it anyway - defeatism at its worst.

Computer security is an asymmetric battle.  The little guy is up against goliath, with only some obscure mathematics to safeguard him. The sad fact of the matter is that we were never supposed to have to take on the likes of the NSA and GCHQ.  They were supposed to be the good guys, but their overreach have moved them over to the Dark Side.

Leaky Sieves

The problem is that the NSA and GCHQ are leaky sieves.  They gather tons of data and then leak it out to all and sundry - after all, what is the point of gathering data if nobody will ever look at it?  Therefore the only way to secure your data is to ensure that they can never get their grubby paws on  it in the first place.

The computer geeks of the world have a heavy burden to shoulder, trying to keep company business transactions secure, installing and deploying encryption systems despite general apathy and the constant nagging feeling that it is all for naught - that you are forced to go to a lot of trouble to install a complex encryption system that has already been broken without your knowledge.

Eliptic Curve and Diffie Hellman to the Rescue 

At this point, after reading numerous  articles, my advice is to switch to Elliptic Curve Encryption with the Diffie Hellman Key Exchange, despite Bruce Schneier's reservations about the NSA involvement in the selection of the constants (Much as I dislike their current overreach, the NSA isn't all bad, just don't use Dual_EC_DRBG from NIST SP 800-90, which was discredited by very good Microsoft cryptographers. :).

Look for the keyword ECDHE when you select and install off the shelf VPN equipment or software.  Make the keys as long as you can tolerate (larger than 500 bits) and put your trust in forward security, so that if one session gets compromised, it doesn't automatically spill all the beans in your NSA archive. That seems to be about the best you can do.

You should use standards and devices that are designed to be interoperable, for example Suite B described on this page: and the one I prefer would be this, which is Elliptic Curve  key agreement with a Discrete Logarithm algorithm and a Diffie Hellman handshake.

Interoperable equipment ensures that the implementation was reviewed by multiple parties.  Do not trust proprietary algorithms from a single source, since it could be snake oil.

Sometimes I get tempted to add a large block of /dev/urandom data to the end of every email, just to give the spooks grief...

Good Luck With This

***IDEA2048***�̽����=��-�w� �%� ��麿�(:����R �vO �� R� -�ו؅*� �
� _fT�Ϯ�M듾)[�=�vz�� ��?"�{���趢�� ��|T
CH�[ߋuK�� .D(��72 ���z -�
                          M=O��LF "��/L+S��m$򖹒�t3��M�c��Ǎ��QnT���PY����O� h �8�h G� ����m ���?�߄|=���><lK� d� ��<\��
                                     ���p�$���W��.&R� �� � ��K?V
                                                                 zs7����O�D� �#m����,�� � ��nh�� I Y�,w��ǒ89vH���b�S7�֒A ���M�O� ��"�)uO���bmWF��vڊ�7�D� p �� t����G2$����7L ��+T�ݿs�*��]�/9 �� 78X(�o��'���l( ���,���� � %�� +~ �����
           /i��#�ay���G�C �ln ^*e96�z|�6����c ��~���aL(��W<4ӌ&j����/    � ��w �z6sp?G�T�d�k�;l�����%o
���Z������`�z'̎���躸f�$ ���X�*�%���V�kA��d�p�=�|� �xyـ� V&� ��.1�{|
                                                                   � P���^`���ۚ�$M>ձ� � - 3� k���f| K�4�tK & ��{�Ir P�č XN �W���� �����r[�~z�øub[��x�ay���dn=o��P� � ���0��V ����s�Ji�����z.Ef�b���C���[��L� ��_Z�e� � nE���c��>T[�� qn s˱��i@W��+]�9����1&L� gɔ_ y�k�ɪ���QԲ"�zW�
;B�������0��***END IDEA2048***

No comments:

Post a Comment

On topic comments are welcome. Junk will be deleted.