草庐IT

AES_cbc_encrypt

全部标签

php - 如何让 Ruby AES-256-CBC 和 PHP MCRYPT_RIJNDAEL_128 很好地协同工作

我正在生成要从Ruby堆栈发送到PHP堆栈的数据。我在Ruby端使用OpenSSL::Cipher库,在PHP中使用“mcrypt”库。当我在Ruby中使用“aes-256-cbc”(256位block大小)进行加密时,我需要在PHP中使用MCRYPT_RIJNDAEL_128(128位block大小)来解密它。我怀疑Ruby代码被破坏了,因为cipher.iv_len是16;我认为应该是32:>>cipher=OpenSSL::Cipher::Cipher.new('aes-128-cbc')=>#>>cipher.key_len=>16>>cipher.iv_len=>16>>ci

php - Laravel 未定义函数 openssl_encrypt()

我使用laravel5.1,它在phpcli上运行良好。但是我将我的项目发布到apache(版本==2.4),问题发生了。FatalErrorExceptioninEncrypter.phpline67:Calltoundefinedfunctionopenssl_encrypt() 最佳答案 首先确保您安装了opensslextension(由deceze发现),然后:转到您的php.ini文件去掉extension=php_openssl.dll前的分号重启你的Apache我预计这是问题所在。

android - 如何从 android 中的 AES 加密字符串中删除 PKCS7 填充?

我正在使用自己定制的加密方法开发安全应用程序,但在消息解密方面遇到问题。这是我的代码privatestaticvoidmyCryptography(){Security.addProvider(neworg.bouncycastle.jce.provider.BouncyCastleProvider());byte[]input="HiteshDhamshaniya".getBytes();byte[]keyBytes="ABCD657865BHNKKK".getBytes();SecretKeySpeckey=newSecretKeySpec(keyBytes,"AES");Ciph

java - iOS 和 Android AES 加密(Java 中没有 UINT)

全部,我是加密领域的新手,所以我不确定我需要分享哪些信息才能获得帮助;但我会编辑这个问题,因为我了解更多关于如何很好地提出这个问题:)我正在通过蓝牙与设备通信的iOS和Android应用程序上执行AES加密。我正在使用AESCTR加密,它已在iOS上完全实现并正常运行。我遇到的问题是,当我将IV等项目转换为字节数组时;java字节是有符号的,而swift字节是无符号的,所以我可以在Java上加密和解密我的字符串;这与我在iOS中看到的结果不同。其他人如何处理这个unsignedint问题?我觉得我做错了一些直截了当的事情。我真的不确定要发布什么代码。对于android,我使用的是十六进

C++-openssl-aes-加密解密

hmac  Hash-basedMessageAuthenticationCodeMAC定义:MessageAuthenticationCode一种确认完整性并进行认证的技术。1.openssl基本版加密解密 #include"openssl/rand.h"#include"openssl/md5.h"#include"openssl/hmac.h"#include"openssl/aes.h"//1.向量在运算过程中会被改变,为了之后可以正常解密,拷贝一份副本使用voidmain(){unsignedcharkey[16]="123456789ABCDEF";//1.keyunsignedi

encryption - 聊天应用程序的端到端加密

我正在尝试构建一个仅用于教育目的的android聊天应用程序。我想尝试实现端到端加密,以确保我的消息安全。我想到了使用RSA作为加密方案(我是密码学领域的新手)这就是我认为我应该做的,Step1:GeneratepublicandprivatekeyintheClientandServersides.Step2:Exchangethepublickeys.(Thismeansthatserverwillhavethepublickeyofeachandeveryclient).Step3:EncryptthemessageusingthepublickeyoftheServerands

c# - 用java在C#中解密AES加密文件

我有以下问题。我用this在C#中加密示例文本的代码,并希望在java中对其进行解密。我使用以下java代码。byte[]IV={65,1,2,23,4,5,6,7,32,21,10,11,12,13,84,45};byte[]KEY={0,42,2,54,4,45,6,7,65,9,54,11,12,13,60,15};bytebaData[]=newbyte[1024];intiRead=0;SecretKeySpeckey=newSecretKeySpec(KEY,"AES/CBC/PKCS5Padding");Ciphercipher=Cipher.getInstance("A

Android AES 加密在 Cipher.doFinal 之后丢失字节

我正在尝试加密来自glide的输入流。我将输入流转换为一个字节数组,并将其传递到我的加密方法中:funencrypt(input:ByteArray):ByteArray{Log.e("TAG","inputsize:${input.size}")valiv=ByteArray(KeyStoreHelper.IV_SIZE)valsecureRandom=SecureRandom()secureRandom.nextBytes(iv)valc=Cipher.getInstance(KeyStoreHelper.AES_MODE)c.init(Cipher.ENCRYPT_MODE,ge

android - AES/CBC/PKCS5Padding加密解密算法和SHA-1哈希算法是否适用于所有类型的Android设备

我曾尝试在Nexus5中运行以下AES/CBC/PKCS5Padding加密和解密代码,使用SHA-1作为key生成。它运行良好到目前为止。然而,我唯一担心的是,AES/CBC/PKCS5Padding加密解密算法和SHA-1哈希算法是否适用于所有类型的Android设备?以下代码是否有可能无法在某些Android设备上运行?如果有,是否有后备方案?AES/CBC/PKCS5Padding//http://stackoverflow.com/questions/3451670/java-aes-and-using-my-own-keypublicstaticbyte[]generate

Android AES 和初始化向量

我在AES加密和解密方面遇到问题:我可以完全更改我的IV,但我仍然能够解码我的数据。publicstaticfinalbyte[]IV={65,1,2,23,4,5,6,7,32,21,10,11,12,13,84,45};publicstaticfinalbyte[]IV2={65,1,2,23,45,54,61,81,32,21,10,121,12,13,84,45};publicstaticfinalbyte[]KEY={0,42,2,54,4,45,6,7,65,9,54,11,12,13,60,15};publicstaticfinalbyte[]KEY2={0,42,2,5