AesManaged和RijndaelManaged
IM当前正在开发连接到旧Web服务的Silverlight应用程序. 我们的旧Web服务使用Silverlight不支持的加密工具. 最后,我们决定使用Aesmansed进行加密,但是,我们的Web服务不支持ASMANET.他们的一种方式是解密对Rijndaelman的竞争的方式? 如果是,您可以发布样品片段吗?您的反馈非常需要. 谢谢. 解决方案 我找到了一个样本片段.从与之相关的一个问题中引用在这里 其他解决方案 只要您确保将Rijndaelman的封锁设置为128位,Aesmanative and Rijndaelman的行为将相同. aes只是带有块的rijndael加密算法的另一个名称. .
0 2023-12-02
编程技术问答社区
如何用aspnet_regiis选择/执行AES加密来加密web.config值?
我需要为我们的ASP.NET 4.0项目加密web.config的一部分,但是我们需要使用AES,并且默认值似乎是三重DES.我如何告诉它使用AES加密? 在命令提示中,我执行以下命令: aspnet_regiis -pc "NetFrameworkConfigurationKey" -exp aspnet_regiis -pe "connectionStrings" -app "/" 我认为我通过选择适当的CSP(-CSP)将加密方法设置为AES,但我无法找到或找出合适的名称. 和加密的Web.config中的一条线是: 解决方案 使用-prov参数到ASPNET_REGIIS.提供商使用ConfigProtectedData部分在Web/Machine.config中注册.为了注
0 2023-11-30
编程技术问答社区
"volatile void function(...) "是做什么的,或者说是做了什么?
我已经看过从语法角度来看,"挥发性"关键字在C ++函数中具有多少用法?关于函数上挥发性关键字的使用,但没有明确解释该问题的情况1.只有一位受访者的陈述似乎毫无意义/无用. 但是我不能完全接受该语句,因为GNUC的AES软件实现已经使用了几年了,并且它们具有许多这样的功能: INLINE volatile void functionname( /* ... */ ) { /* ... */ asm( /* ... */ ) // embedded assembly statements /* ... */ } 必须有这种用法的原因.任何人都可以: a .告诉我最初的原因是什么;和 b .现在如何实现所需的效果? 我正在使用ubuntu,gcc 4.6.3. 注意:最接近我的解释是,在GCC 2.5之前,您可以通过以下内容欺骗2.5中实现的" Noreturn"属性: void fatal( /* ... */ ) {
2 2023-11-25
编程技术问答社区
调试和发布模式下的AES加密问题
我正在使用AES加密算法(Rijndael实现).我正在使用MS Visual Studio 2008 IDE进行开发工作.在调试和发布模式下,我可以看到一个奇怪的问题.当我以调试模式加密字符串时,它会生成不同的字节,而不是发布模式.但是幸运的是,解密会导致同一字符串.我尝试过Mac,它会生成一个字节序列,但能够正确解密所有字节序列. 这个问题与加密算法或调试/发布设置有关吗? 有什么解决方案可以避免这种情况吗? 问候 Devara Gudda 解决方案 aes是 block cipher.您可以加密并解密固定尺寸为128位的块.为了加密和解密更长的序列,您通常使用某种"操作模式"和特定的"填充方案",这两者都可能涉及通过IV(初始化向量)和填充的某些randonmess.在这种情况下,由于所涉及的"随机性",密码文本每次都会更长且不同.实际上,同一消息将相同的消息加密到不同的密码文本并不是一个坏属性.您甚至需要此保护以保护自己免受某些攻击. 其他解决方案 您
0 2023-11-23
编程技术问答社区
如何在VBScript中使用AES加密?
我希望使用 vbscript 使用特定键和我看着 capicom ;它仅允许使用密码,并且不允许设置特定的键和IV值. 解决方案 一种方法是在不需要外部添加的COM对象或包装器中声明VBScript中的加密类.以下示例使用rijndael托管类进行字符串,加密和解密: '----------------------------------------------------- Dim obj,arr,i,r,str,enc,asc dim bytes,bytesd,s,sc,sd set obj=WScript.CreateObject("System.Security.Cryptography.RijndaelManaged") Set asc = CreateObject("System.Text.UTF8Encoding") s="This is a private message" bytes=asc.GetBytes_4(s) obj.GenerateKey()
6 2023-11-17
编程技术问答社区
通过VBA对Microsoft Access字段进行AES加密
我需要创建一个Microsoft Access数据库,但在我的一张表中需要一个字段,以便对单个字段进行强烈加密. 由于AES需要一个密钥和初始化向量,因此我决定通过需要密码访问数据库(作为键)来解决此问题,而表中的字段则在表中保留了专业的SHA1哈希. 的加密字段 有人知道我可以在哪里找到与VBA兼容的代码实际进行加密? 解决方案 从头开始编写它的一些替代方案; 您可以使用本机cryptoapi(根API为CryptAquireContext) 您可以使用Microsoft的 capicom 包装器和您可以使用第三方库,其中一个来自 其他解决方案 下面是使用RC4加密的示例. 来源: Function fRunRC4(sMessage, strKey) As String Dim kLen, x, y, i, j, temp Dim s(256), k(256) 'Init keystream kLen = Len(strKey) For i = 0
0 2023-11-16
编程技术问答社区
Sage Pay Forms V3.00 AES-128 Encryption VB.Net
我认为我会发布此信息,因为我找不到用于v3.00升级所需的AES加密的现成解决方案. 出于某种原因,SagePay C#解决方案示例没有我所看到的加密/解密代码示例. 我从现有帖子和rijndaelman的VB类示例(Imports System.Security.Cryptography Public Shared Function AESEncryption(ByVal strCrypt As String) As String Dim keyAndIvBytes As [Byte]() = UTF8Encoding.UTF8.GetBytes(strEncryptionPassword) ' Create a new instance of the RijndaelManaged ' class. This generates a new key and initialization ' vector (IV). Using AES As New RijndaelMan
0 2023-11-14
编程技术问答社区
AES解密错误�� 输入数据不是一个完整的块.�� 错误vb.net
我不断获得"输入数据不是一个完整的块".解密时错误.该功能成功地加密了纯文本,并将IV放入文本框中.我使用的是加密数据和IV的IV来解密原始数据,但我一直遇到错误.我不知道我在哪里出错.这是我的代码 Imports System.IO 'Import file I/O tools Imports System.Security.Cryptography 'Import encryption functionality Imports System.Text 'Import text based processing tools` Public Class Form1 Private Function AESEncryption(ByVal clearText As String, ByVal key As String) As String Dim salt As String = tbpassword.Text.Insert(tbpassword.Te
18 2023-11-14
编程技术问答社区
用于VB.NET的AES加密的标准库?
是否有标准库可用于vb.net的AES加密?我想用静态私钥加密字符串. 我谷歌搜索并发现了很多变体.我真的不知道如何确定哪种算法是否安全. 解决方案 System.Security.Cryptography名称空间包含执行大多数标准加密任务所需的所有类.不幸的是,由于加密是一个相当复杂的话题,因此这些课程很难使用,尤其是对于初学者而言.有时很难找到一个简单的工作示例.但是,既然我很好,我会为您提供一个简单的示例,您可以玩并改进:) 您可能要使用的类称为RijndaelManaged.那是实现典型AES加密的类.这是一个示例类,该类用它在纯文本字符串和字节数组之间转换: Public Class Aes256Encrypter Public Function Encrypt(ByVal plainText As String, ByVal secretKey As String) As Byte() Dim encryptedPasswor
0 2023-11-14
编程技术问答社区
AES 256加密:公钥和私钥如何生成和使用。
关于AES 256加密: 什么是公共和私钥? 如何生成这两个键? 如何使用公众加密数据? 我如何使用私人解密数据? 解决方案 在.NET中,您可以像这样创建密钥对: public static Tuple CreateKeyPair() { CspParameters cspParams = new CspParameters { ProviderType = 1 }; RSACryptoServiceProvider rsaProvider = new RSACryptoServiceProvider(1024, cspParams); string publicKey = Convert.ToBase64String(rsaProvider.ExportCspBlob(false)); string privateKey = Convert.ToBase64String(rsaProvide
2 2023-11-14
编程技术问答社区
在Java中用PBKDF2进行密码验证
我有一个基于Visual Basic 2010的程序. 我想使用自定义关键字和AES加密来生成我们公司网站上的注册键,无论该软件是否连接到Internet,都可以解锁该软件. 为此,我想使用我将在网站上构建的实用程序将某些用户信息(和验证代码)加密到AES的字符串中.然后,我希望我的程序将字符串解密到用户信息和验证代码中,然后使用该信息来验证注册密钥. 这使我提出了一个问题 - 如何通过编程中的AES进行加密和解密字符串?我可以在某个地方使用代码模板还是内置方法? 解决方案 快速的Google搜索提出以下功能:我没有测试它们产生的输出是否正确,但是它们似乎确实正确编译了. Public Function AES_Encrypt(ByVal input As String, ByVal pass As String) As String Dim AES As New System.Security.Cryptography.RijndaelM
2 2023-11-14
编程技术问答社区
UWP:AES加密和解密
我有一个简单的课程来对Windows Phone 8进行一些基本的本地加密.我想在Windows Store的新UWP Windows 10应用中再次使用该类.不幸的是,我不能再使用Aesmanated类了. 我尝试使用Windows.Security.Cryptography.Core,但我完全卡住了. 这是我用于Windows Phone 8的原始类.当时我必须在Internet上找到它. using System.Security.Cryptography; namespace TestGame { public class AesEnDecryption { private string AES_Key = "MYLiSQ864FhDevJOeMs9EVp5RmfC7OuH"; private string AES_IV = "FoL5Tyd9sZclVn5A"; public string AES
0 2023-11-12
编程技术问答社区
在 'str = new String(bytes, "UTF8") ' 和 'bytes = str.getBytes("UTF8")' 不是同一个值。
我可以看到它们与我创建的字符串的字节不同! 我已经使用了" AES/CBC/PKCS5PADDING"来获取字符串. public static void main(String[] args) { try { int randomNumber = CNStationQueueUtil.randInt(0, 99999); String key = "AES_KEY_TAKENUMB"; byte[] bytes = EncryptHelper.encrypt(key, String.format("%%%d%%%d", 1001, randomNumber)); String str = new String(bytes, "UTF8"); System.out.println("str = " + str); System.out.println(); by
6 2023-11-11
编程技术问答社区
PHP中有没有一种方法可以对特殊字符进行编码,以便在URL中使用这些字符?
我有一个来自这样的AES加密的字符串 - 有没有办法编码此字符串,以便可以通过URL传输到脚本? 谢谢! 解决方案 您可以使用URLENCODE或BASE64_ENCODE执行该任务,两者都会产生URL安全字符串 其他解决方案 是! 使用全局函数 urlencode($string) 如果要获得原始参数,则可以用: 解码URL-参数 urldecode($string)
2 2023-11-09
编程技术问答社区
如何在iPhone上解压缩AES加密的zip文件?
在我当前的iPhone项目中,我需要解密使用AES 256方法在带有Quittit Engine或Windows上使用Winzip的Mac上加密的ZIP文件. 我尝试使用ziparchive(基于缩影),但它不起作用.有人知道该怎么做吗? 解决方案 我最终购买了 ipworks zip library 的许可证. 其他解决方案 添加了AES加密支持,以贡献: https://github.com/nmoinvaz/minizip 其他解决方案 我刚刚使用Winzip Pro版本10.5.6553在Mac上加密了一个ZIP文件.在设置中选择了256位AE作为加密方法.我将文件传输到iPhone.在我打开它的文件中,它索要密码并毫无问题地将其解密.假设Winzip Pro应用程序正常工作,那么iPhone上的标准文件应用程序可以解密使用256位AES加密加密的ZIP文件. (iOS 16.6.1,就在17版之前)
2 2023-11-09
编程技术问答社区
对AES 128 CBC的蒙特卡洛测试
我正在在AES 128 CBC上进行MCT,如 http://csrc.nist.gov/groups/stm/cavp/documents/aes/aesavs.pdf 首次迭代的预期向量结果为 key = 9DC2C84A37850C11699818605F47958C iv = 256953b2feab2a04ae0180d8335bbed6 宣传= 2E586692E647F5028EC6FA47A55A2AAB ciphertext = 1B1EBD1FC45EC43037FD4844241A437F 以下功能用于生成第一次迭代输出, void do_mct() { EVP_CIPHER_CTX *ctx = NULL; unsigned char key[16] = { 0x9d, 0xc2, 0xc8, 0x4a, 0x37, 0x85, 0x0c, 0x11, 0x69, 0x98, 0x18, 0x60,
2 2023-11-07
编程技术问答社区
AES加密和混淆ID
我正在考虑将一小片敏感ID数据块放置,但我需要一旦混淆,我就需要保持整个数据块的全部唯一性. . 所以,我想出了加密一些公开的输入数据(例如128位零)的想法,然后 使用我想混淆为关键/密码的数据,然后投掷它离开了 ,从而保护原始数据免受发现. 我已经知道哈希算法,但是我的问题是我需要保持完整的独特性 (通常说 1:1映射输入输出)虽然仍然 使得无法检索实际输入. 不必一旦"加密"检索数据.仅将其用作ID号. 实际的GUID/UUID在这里不合适,因为我需要以每个标识符为基础手动控制标识符. ID不能是未知或任意生成的数据. 编辑:准确澄清 这些标识符是由: 制成的 (未加密的) 64位时邮票 ID生成计数器(每种Filetype的一个计数) 随机数据(使多个加密键不同) MAC地址(如果没有可用,请设置顶部位 +随机数字) 其他特定于PC的信息(来自注册表) 整个内容应该加入192位,但是加密的部分的内容大小可能会有所不同(这绝不是最终规范
0 2023-11-07
编程技术问答社区
IOS上的图像加密/解密
我们正在使用加密/解密和uiimage.如果我们在没有保存到iPhone画廊的情况下加密和解密和UIIMAGE,则可以正常运行,但是如果我们对加密,保存到图库中,将(图像加密)加载到应用程序中并批准它的工作不好. > 我们正在使用此功能来加密/解密/保存/load //加密 UIImage *image = self.imageView.image; CGContextRef ctx; CGImageRef imageRef = [image CGImage]; NSUInteger width = CGImageGetWidth(imageRef); NSUInteger height = CGImageGetHeight(imageRef); CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); unsigned char *rawData = malloc(height * width * 4);
8 2023-11-03
编程技术问答社区
使用CryptoJS与hex-string
我想连接到蓝牙设备.沟通仅通过十六进制.我需要编码16个字节值.结果,我还期望16个字节值.在我的实施中,cryptojs总是返回更长的结果.根据文档,不需要IV. ("所有16个字节数据必须使用当前存储在设备中的客户主密钥进行加密,并使用AES128 CBC加密 密码模式")因此,我将IV设置为0000000000000000000000000000000000,因为Cryptojs似乎需要它.我在做什么错? const CryptoJS = require('crypto-js'); const value = CryptoJS.enc.Hex.parse('5ff58680541c5a5903f4833dfaa4281f'); const key = CryptoJS.enc.Hex.parse('41435231323535552d4a312041757458'); // known master key const ivvar = CryptoJS.enc.Hex
4 2023-11-01
编程技术问答社区