如何创建AES XTS密钥?


1

我感兴趣的是使用Gluster cloud FS进行攻击,其中最新的测试版仅使用AES和XTS。它还需要openssl> = 1.0.1。

我的Mac安装的1.0.1f Jan 2014 openssl(64位lib)似乎不支持这个。

  1. AES_XTS实际上是否在另一个密码名下?
  2. 如何在命令行上生成256位AES_XTS(主)密钥?

Answers:


0

AES_XTS实际上是否在另一个密码名下?

grep 是你的朋友:

openssl-1.0.1f$ grep -R XTS *
...
crypto/objects/obj_dat.h:{"AES-128-XTS","aes-128-xts",NID_aes_128_xts,0,NULL,0},
crypto/objects/obj_dat.h:{"AES-256-XTS","aes-256-xts",NID_aes_256_xts,0,NULL,0},
...
crypto/objects/obj_mac.h:#define SN_aes_128_xts         "AES-128-XTS"
crypto/objects/obj_mac.h:#define SN_aes_256_xts         "AES-256-XTS"
crypto/objects/objects.txt:                     : AES-128-XTS           : aes-128-xts
crypto/objects/objects.txt:                     : AES-256-XTS           : aes-256-xts
...

所以,它看起来像你的NID名称 aes-128-xtsaes-256-xts


如何在命令行上生成256位AES XTS(主)密钥?

嗯... XTS只是另一种分组密码操作模式(如ECB,CBC,CTR,GCM等)。所以没有什么特别的 - 只要像你一样继续这样做。


我的Mac安装的1.0.1f Jan 2014 openssl(64位lib)似乎不支持这个。

这听起来不对。我的1.0.1f版本有它。你得到你的OpenSSL版本吗?


安装我的Mac ...

Mac OS X发布0.9.8。确保您使用的是OpenSSL版本,而不是Apple的OpenSSL版本。

Apple链接器默默地忽略了类似的选项 -Bstatic-rpathLD_PRELOAD。因此,确保您实际使用的是OpenSSL版本需要一些努力;而不是Apple的OpenSSL版本。

在OS X上,使用编译程序 -lcryto-lssl-L<your openssl path>。默认情况下,安装OpenSSL /usr/local/ssl/lib。然后,在启动程序之前:

set env OPENSSL_LIBPATH /usr/local/ssl/lib
set env DYLD_INSERT_LIBRARIES $OPENSSL_LIBPATH/libcrypto.so:$OPENSSL_LIBPATH/libssl.so

看到 dylib(1) 有关的信息 DYLD_INSERT_LIBRARIES 和朋友。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.