草庐IT

Crypt_RSA

全部标签

ios - 奇尔卡特 iOS10+ RSA 兼容性问题

我在一个iOS应用程序中使用nativeRSA,在另一个应用程序中使用ChilkatRSA库。在nativeiOS端,我使用以下函数加密(OAEPSHA256)数据:staticfuncencryptWithKey(_data:Data,rsaKey:SecKey)->Data?{letalgorithm=SecKeyAlgorithm.rsaEncryptionOAEPSHA256guardSecKeyIsAlgorithmSupported(rsaKey,.encrypt,algorithm)else{returnnil}varerror:Unmanaged?letencrypte

swift - 使用 Swift 获取 RSA 私钥的 n 和 d

我正尝试在Swift中实现Yao的百万富翁问题算法,但遇到了障碍。为了实现这个算法,我需要生成一个RSA私钥并得到n和d。到目前为止,我已经创建了这样的key:importSecurityimportFoundationlettag="com.example.keys.mykey".data(using:.utf8)!letattributes:[String:Any]=[kSecAttrKeyTypeasString:kSecAttrKeyTypeRSA,kSecAttrKeySizeInBitsasString:1024,kSecPrivateKeyAttrsasString:[k

ios - 如何在 Swift for IOS 中生成 RSA 非对称 key 对?

我需要一种在Swift中生成RSA非对称key对的方法。我不需要将它存储在钥匙串(keychain)或任何东西中。我只需要生成一个key对并将两个key都推送到String变量中。key确实需要与另一端的PHP兼容。我将使用对称加密来保护私钥并将其存储在手机上。我会将公钥发送到用PHP实现的Web服务,Web服务会将公钥存储在数据库中。Web服务稍后将使用该公钥来加密一次性密码和其他发送到IOS应用程序的敏感值等值。我将为从IOS应用程序流向Web服务的小块数据实现类似的方案。在developer.apple.com上显示了我能找到的用于在Swift中生成key对的唯一记录在案的API

java - 在 iOS/Swift 中创建并导出为 base64 的 RSA 公钥在 Java 中无法识别

TL;DR:无法识别在iOS中生成并存储在钥匙串(keychain)中、导出为base64并发送到java后端的RSA公钥。我正在iOS应用程序中实现聊天加密功能,我正在使用对称+非对称key来处理它。无需过多赘述,在后端,我使用用户的公钥来加密用于加密和解密消息的对称key。我创建了两个框架,分别用Swift和Java(后端)来处理key生成、加密、解密等。我也对它们进行了测试,所以我100%一切都按预期工作。但是,后端似乎无法识别从iOS传来的公钥格式。双方都使用RSA,这是我在Swift中用来生成key的代码://privatekeyparametersstaticletpriv

java - 在 Java 中使用 RSA 私钥加密

我正在尝试使用RSA私钥加密某些内容。我正在关注这个例子:http://www.junkheap.net/content/public_key_encryption_java但将其转换为使用私钥而不是公钥。按照这个例子,我认为我需要做的是:读入一个DER格式的私钥生成PCKS8EncodedKeySpec从KeyFactory调用generatePrivate()获取私钥对象使用私钥对象和Cipher对象进行加密所以,步骤:key是从openssl生成的:opensslgenrsa-aes256-outprivate.pem2048然后转换为DER格式:opensslrsa-inpri

java - 无法使用开放式 SSL 解密 RSA 数据

我尝试使用我用openssl创建的公钥在matlab中加密一些数据我使用以下方法创建了key:opensslgenrsa-des3-outprivate.pem1024opensslrsa-inprivate.pem-pubout-outformDER-outpublic.der我使用这个matlab代码(使用Java库)加密我的数据:importjava.security.spec.RSAPublicKeySpecimportjavax.crypto.Cipher;importjava.security.KeyFactoryimportjava.math.BigIntegerfid=

c# - RSA .NET 加密 Java 解密

我正在尝试使用RSA算法在.NET中加密字符串并在Java中解密结果。目前,我已经能够做相反的事情(在Java中加密,在.NET中解密)。在这里,我有实际工作的代码(JAVA加密):byte[]modulusBytes=Base64.decode("2rRVVVFJRbH/wAPDtnwZwu+nxU+AZ6uXxh/sW+AMCBogg7vndZsnRiHoLttYYPqOyOhfgaBOQogrIfrKL4lipK4m52SBzw/FfcM9DsKs/rYR83tBLiIAfgdnVjF27tZID+HJMFTiI30mALjr7+tfp+2lIACXA1RIKTk7S9pDmX8

RSA密码原理详解及算法实现(六步即可掌握)

一、RSA算法概述rsa算法是一种非对称加密算法,其安全性是建立在大素数难以分解的基础上的,即将两个大素数相乘十分容易,但想对其乘积进行分解却很困难,所以可以将其乘积公开作为加密密钥二、RSA算法设计理念根据数论,寻求两个大素数比较简单,而将它们的乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥三、加解密过程及密钥生成1、加解密过程此处从明文和密文加密和解密开始,然后讲密钥的生成(1).对于明文M,则有密文C=M^emodn (获得密文是明文的e次方再模n,即求余数)   (2).对于密文C,则有明文M=C^dmodn  (获得明文是密文的d次方再模n,即求余数)明文和密文的产生是建

java - 在 Java 中为 OpenSSL 格式化 RSA key

背景使用命令在Linux上使用OpenSSL生成RSAkey,opensslgenrsa-outmykey.pem1024创建了以下内容:"-----BEGINRSAPRIVATEKEY-----MIICXQIBAAKBgQChs9Fepy5FgeL0gNJ8GHcKRHsYnM2Kkw19zwydDQNyh2hrHWV2B11wpLFp8d0imcl2Wjb0oV/AxOhb3unQgNzs66LVuXJwS8icp3oIJZtExs6tkxzEs5mnU68wMeCYtJqHIZOmNblVWvpJMLNAwAVi3oLfnzDDbzjnDapm8M21nQIDAQABAoGAZ1

java - 将 .Net RSA xml key 移植到 Java

我有来自.Net系统的xml格式的私钥和公钥。我必须使用此key在Java中执行加密/解密。有什么办法吗?公钥看起来像这样:jHIxcGzzpByFv...pvhxFnP0ssmlBfMALisAQAB私钥:4hjg1ibWXHIlH...ssmlBfMAListzrgk=AQAB8QZCtrmJcr9uW7VRex+diH...jLHV5StmuBs1+vZZAQ==8CUvJTv...yeDszMWNCQ==elh2Nv...cygE3657AQ==MBUh5XC...+PfiMfX0EQ==oxvsj4WCbQ....LyjggXg==KrhmqzAVasx...uxQ5VGZm