-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi all,
This week I focused on the benchmark that will run at start-up to figure out what provider is fastest for each algorithm. There were already some benchmarks written for Message Digests, HMAC, and AES/CTR comparing SunJCE to whatever the default is. I moved all of them to a single class PreferredAlgorithms. They now also compare against BouncyCastle. PreferredAlgorithms will keep track of the currently used algorithms and the preferred providers for all algorithms. I have also started creating a Signatures class and a CryptBucket class. I'm still trying to figure out if the Signature class should actually store sigs, or just sign and verify them and let them be stored somewhere else. I'm leaning towards storing, let me know if you have any suggestions. I will be storing Buckets in CryptBucket. The code can be found on my github [1]. I finished reading Applied Cryptography. It was very helpful in getting a better understanding of stream ciphers, cipher modes, and MACs. I have also been doing more research on what algorithms to use. I found an good looking java implementation of ed25519(EdDSA)[2]. This is a very fast ec signing algorithm using curve 25519. This implementation is based on ref10 which hasn't been audited yet, but hopefully will be the end of the summer (it's pretty new, and there appearers to be a lot of interest in it). The backup is to just use ECDSA. I would like to move from HMAC and use Poly1305-AES as our MAC. It is many times faster and pretty much as secure as AES. This is already in BC. For symmetric encryption I'd like to use AEAD ChaCha20-Poly1305 but it is only included in the current BC beta and is a TLS cipher. I'm not sure yet if that would work though. If it doesn't I'll probably use our current AEAD AES-OCB. Let me know if you have any thoughts on these choices. This next week I'm going to look into the best way to fix the bug with using BC 1.50 instead of 1.49 [3]. I will also be working more on the API classes. - -Charles [1] https://github.com/unixninja92/fred-staging/tree/GSoC2014-crypto-api [2] https://github.com/str4d/ed25519-java [3] https://github.com/waldheinz/fred-staging/commit/6f3bd1b328a7ad0c4a92aea018a5d5d6405cba08#commitcomment-6331876 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQIcBAEBAgAGBQJTlTTxAAoJEKzPTx3Y+gGrltIQALwTFYAKRq1it/bvSPO4nzYI 9LGbUejPnYC53035vmgqLzFkNSEIpwTMwSwBN/JV0uSjDzRymcHXU+OamNnvCEsa 2yES92zAmKFEXnH3X38gHOecIrv24J6SSIK8wplDnaeWqC42sKUz3Ulv8tBvrzDx 8yLpdVP3bjN7VuBwwzWEmDiVDMWmcE4hK2fXH4rD/OjA5ZN3nY0QZAPPRKOjMhn1 7n9K1SyUFLRGaASeayDaEDlVUdgIfH0mzZQmcUqTwZNFUEqVGs+LCilvqDaIsp6w +ld6DlnEfmygFt7UEUjZ9kvbAcF7lAZbTAniVIM3T/iyt2V8qQEFbmnZKMyrPwgF 9iy7PhW3uN+RBcF5h0hANUnmyLyRM2ivFzDCe/S5UagLd4GLJ+mNnJ7vTyDzQd2a R4fdyksMLs1upZbx2FX0XU9jHcjG5IQzNpV0wLx/z1YiDcxXi3hEUrg0I5iHO1iP ax3ZhM7DxC1+cc8W5JMk1wN6SrwT9GyKK9azdRK9cP19pQnHiAVp3jMrorY3TiNk DUIYN+YmGXISmjGUUXOhQtWhY2pJhaN1L8JxHsLpE/fuhFVak8LMjRscZd/Y8OCX RIEbk7pm/IHaN/1U8VAbIxgWvMVCEWIcxT0YjnzNFsF6/a8+CD2iAQpeA1mHXaKh 7YzKuq2lwPfQc5y2qDbw =ZkcZ -----END PGP SIGNATURE----- _______________________________________________ Devl mailing list [email protected] https://emu.freenetproject.org/cgi-bin/mailman/listinfo/devl
