3 ms·
True. We did try ipsec, and couldn't find an implementation that was oss, demonstrably safe, and easy enough to pull into a first release. As weave matures, w
by weavenetwork 11y ago
True. We did try ipsec, and couldn't find an implementation that was oss, demonstrably safe, and easy enough to pull into a first release. As weave matures, we'd love to work with experts to implement standard solutions, even if they are costly to put in place.
- api 11y ago"demonstrably safe" -- this is another issue I have with this crypto conservative FUD. "Use SSL, don't roll your own!" Then we get BEAST, CRIME, Heartbleed, etc., and we discover that the dominant SSL/TLS implementation is a rat's nest of comically awful code: http://opensslrampage.org http://opensslrampage.org Look at the older posts for LuLz like: http://opensslrampage.org/post/83007010531/well-even-if-time-isnt-random-your-rsa http://opensslrampage.org/post/83007010531/well-even-if-time... I wonder just how much scrutiny IPSec implementations have gotten, especially since it's such a usability nightmare that nobody uses it.
- weavenetwork 11y agoindeed. at the risk of entering tinfoil hat land, note the following http://blog.cryptographyengineering.com/2014/12/on-new-snowden-documents.html http://blog.cryptographyengineering.com/2014/12/on-new-snowd... ..although also the not 100% reassuring https://nohats.ca/wordpress/blog/2014/12/29/dont-stop-using-ipsec-just-yet/ https://nohats.ca/wordpress/blog/2014/12/29/dont-stop-using-...
- takeda 11y agoWhat about other libraries? GnuTLS, NSS, PolarSSL, wolfSSL?
- weavenetwork 11y agoWhat about them? Would you recommend one of them over the others?
- takeda 11y agoYes, any of them is better than rolling your own. Even if they have bugs (it is unlikely they don't), they'll still have less bugs than own implementation. If you are still not convinced, at least give user option what to use. curl[1] is a good example of giving freedom to the user. [1] http://curl.haxx.se/docs/ssl-compared.html http://curl.haxx.se/docs/ssl-compared.html
- weavenetwork 11y agoThanks @takeda. Are you aware that we did not roll our own crypto? Instead we used the NaCl crypto libs[1]. Weave adds about 300 LOC to integrate NaCl. You can read about it here - http://docs.weave.works/weave/latest_release/how-it-works.html#crypto http://docs.weave.works/weave/latest_release/how-it-works.ht... You can also read a bit about weave crypto in the comments from mradestock and msackman elsewhere on this page. I would be extremely grateful if you could provide actionable advice (or help) on which other crypto libraries could fit our requirements for weave. Please note that in addition to functional requirements, any library must be open source, hard to misuse, easy to package, and demonstrably safe. alexis [1] http://nacl.cr.yp.to/ http://nacl.cr.yp.to/
- yellowapple 11y agoOpenBSD's implementation checks off at least the first two boxes, though the third would be a bit difficult in the GNU/Linux world.
- weavenetwork 11y agoWe are open to recommendations, help and overall insight from expert contributors in security. As many people on this thread have pointed out, it is a big and complex world..