草庐IT

java - 用于签名计算的 HMAC-SHA256 算法

我正在尝试使用HMAC-SHA256算法创建签名,这是我的代码。我使用的是美国ASCII编码。finalCharsetasciiCs=Charset.forName("US-ASCII");finalMacsha256_HMAC=Mac.getInstance("HmacSHA256");finalSecretKeySpecsecret_key=newjavax.crypto.spec.SecretKeySpec(asciiCs.encode("key").array(),"HmacSHA256");sha256_HMAC.init(secret_key);finalbyte[]mac

java - 用于签名计算的 HMAC-SHA256 算法

我正在尝试使用HMAC-SHA256算法创建签名,这是我的代码。我使用的是美国ASCII编码。finalCharsetasciiCs=Charset.forName("US-ASCII");finalMacsha256_HMAC=Mac.getInstance("HmacSHA256");finalSecretKeySpecsecret_key=newjavax.crypto.spec.SecretKeySpec(asciiCs.encode("key").array(),"HmacSHA256");sha256_HMAC.init(secret_key);finalbyte[]mac

swift - 快速的 SHA256

我想在我的项目中使用sha256,但我在将objC代码重写为swift代码时遇到了一些麻烦。请帮帮我。我使用了这个答案:HowcanIcomputeaSHA-2(ideallySHA256orSHA512)hashiniOS?这是我的代码varhash:[CUnsignedChar]CC_SHA256(data.bytes,data.length,hash)varres:NSData=NSData.dataWithBytes(hash,length:CC_SHA256_DIGEST_LENGTH)它给我所有错误,因为swift无法将Int转换为CC_LONG,例如。

ruby - OpenSSL AES-256-CBC 加密错误, "wrong final block length" ruby

使用Ruby1.8.6。我正在编写一个基本服务器,它回显客户端发送的消息的加密版本,以了解Ruby中对称加密的实现。该程序旨在接受套接字连接,共享其key,然后加密接收到的数据,然后再将其发送回客户端程序。然后客户端使用共享key解密消息,显示回显消息。我遇到的问题是返回消息导致“错误的最终block长度(OpenSSL::CipherError)”。进一步检查问题,删除decrypted允许我的客户端程序解密消息,但在末尾添加额外的字符或银行空格。我知道这是因为final关键字删除了额外的填充以允许CBC模式的16位block加密/解密,但我无法弄清楚如何使工作正常。这是简化的服务器

c++ - 生成 AES (AES-256) 查找表

我正在尝试使用nVidiaCUDA在CTR模式下实现AES-256。我已经成功地为key扩展编写了CPU代码,现在我需要实现实际的AES-256算法。根据维基百科,我见过一些代码,特别是thisPDF(第9页),AES循环可以实现为一系列表查找。我的问题是如何生成这些表?我知道我需要4KB来存储这些表,这不是问题。我花了一整天的时间试图找到这些表,但没有成功。我发布的PDF链接提到了查找表T0、T1、T2和T3,但我不知道这些是什么。它还提到了轮key4、5、6和7,但我也不明白这些索引指的是什么。我最接近弄清楚如何生成这些查找表的是thisproject.在代码中,有一条评论说:Te

java - AES 256 加密 - Qt 等同于 Java

我实现了AES256加密方法,并且在Java中运行良好,如下所示!privatestaticfinalbyte[]IV={0,2,4,8,16,32,64,127,127,64,32,16,8,4,2,0};//actualencryptionoverhereprivatestaticbyte[]encrypt(byte[]raw,byte[]clear)throwsException{SecretKeySpecskeySpec=newSecretKeySpec(raw,"AES");Ciphercipher=null;if(isIVUsedForCrypto){cipher=Ciph

c++ - 使用 clang/g++ 时 __m256i 数组的段错误

我正在尝试生成__m256i的数组以在另一个计算中重用。当我尝试这样做时(即使是最小的测试用例),我也会遇到段错误——但前提是代码是用g++或clang编译的。如果我使用Intel编译器(版本16.0)编译代码,则不会发生段错误。这是我创建的测试用例:intmain(){__m256i*table=new__m256i[10000];__m256izeroes=_mm256_set_epi64x(0,0,0,0);table[99]=zeroes;}用clang3.6和g++4.8编译上述代码时,出现段错误。这是英特尔编译器生成的程序集(来自https://gcc.godbolt.or

c++ - 将 8 个字符从内存加载到 __m256 变量中作为打包的单精度 float

我正在优化图像上的高斯模糊算法,我想用__m256内在变量替换下面代码中浮点缓冲区[8]的使用。什么系列的指令最适合这项任务?//unsignedchar*new_imageisloadedwithdata...floatbuffer[8];buffer[x]=new_image[x];buffer[x+1]=new_image[x+1];buffer[x+2]=new_image[x+2];buffer[x+3]=new_image[x+3];buffer[x+4]=new_image[x+4];buffer[x+5]=new_image[x+5];buffer[x+6]=new_i

ios - 带有 iso10126 填充的 iOS 上的 AES256 解密

我需要能够从不受控制的服务器中解密带有iso10126填充的AES256加密数据block。CCCrypt似乎只支持“kCCOptionECBMode”和“kCCOptionPKCS7Padding”作为选项,因此CommonCrypto库似乎无法满足我的需求。什么是最佳解决方案?我还希望能够使用iso7816和iso10126填充,但它们的优先级较低。我知道这些填充选项被认为“可能不安全”,但由于我无法控制数据源,我仍然希望能够使用这些设置进行解密。我相当确定这些AES加密的数据片段是由CryptoJSjavascript库加密的(它具有上面提到的所有填充选项)。我知道我可以通过UI

php - 使用 Objective-C 加密并使用 MCRYPT_RIJNDAEL_256 MCRYPT_MODE_ECB 在 PHP 中解密

首先我想说我真的尝试自己解决这个问题并阅读了很多东西(比如这个Objective-CversionofPHPmcrypt_encrypt和这个HowtoDecryptaPHPScriptinObjective-C/ios)我真的被困了几个小时。我必须在iOS中实现一个服务器API(我旁边的同事在Android中也是如此)。服务器人员告诉我们,我们必须发送加密密码,他们将使用mcrypt_decrypt对其进行解密。他们向我们发送了他们用于测试加密/解密的代码,这是他们的加密部分:functionfnEncrypt($sValue,$sSecretKey){$ivsize=mcrypt_