标签: private-key

如何将现有私钥用于新的iOS开发证书?

出于美观原因,我想使用我之前用于创建分发证书的相同私钥,以创建新的开发证书(我的旧证书已过期).但iOS配置门户上的"如何创建开发证书:"要求您使用Keychain Access创建新密钥.当我尝试执行Keychain Access> Certificate Assistant>从证书颁发机构申请证书时"(我的密钥名称)"证书助理实际上并不创建CSR文件.

有谁知道这是否可以做到,如果可以,怎么做?

iphone certificate ios ios-provisioning private-key

25
推荐指数
1
解决办法
9913
查看次数

将字符串转换为加密密钥,反之亦然java

我目前正致力于将键转换为字符串,反之亦然.它适用于公钥转换,并将私钥转换为String.由于某种原因,相同的代码不会将String转换回私钥,这是我无法弄清楚的.

转换器代码是:

import java.security.KeyFactory;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.spec.X509EncodedKeySpec;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;

@SuppressWarnings("restriction")
public  class KeyConvert {


public static PublicKey stringToPublicKey(String s) {

    BASE64Decoder decoder = new BASE64Decoder();

    byte[] c = null;
    KeyFactory keyFact = null;
    PublicKey returnKey = null;

    try {
        c = decoder.decodeBuffer(s);
        keyFact = KeyFactory.getInstance("DSA", "SUN");
    } catch (Exception e) {
        System.out.println("Error in Keygen");
        e.printStackTrace();
    }


    X509EncodedKeySpec x509KeySpec = new X509EncodedKeySpec(c);
    try {
        returnKey = keyFact.generatePublic(x509KeySpec);
    } catch (Exception e) {

        System.out.println("Error in Keygen2");
        e.printStackTrace(); …
Run Code Online (Sandbox Code Playgroud)

java encryption public-key private-key

24
推荐指数
1
解决办法
4万
查看次数

如何将Byte数组转换为PrivateKey或PublicKey类型?

我使用RSA算法生成公钥和私钥

final KeyPairGenerator keyGen = KeyPairGenerator.getInstance(ALGORITHM);
keyGen.initialize(1024);
final KeyPair key = keyGen.generateKeyPair();
final PrivateKey privateKey=key.getPrivate();
final PublicKey publickey=key.getPublic();
Run Code Online (Sandbox Code Playgroud)

之后,使用Base64编码器对这些密钥进行编码并将其保存到数据库中.

如何在java中将此编码的字符串转换为私有和公钥类型是解密文件.使用Base64Decoder解码此String时将获得一个字节数组.如何将此Byte数组转换为公钥或私钥类型?

java cryptography jce public-key private-key

24
推荐指数
1
解决办法
3万
查看次数

使用私钥通过 VSCode 连接到主机

我想连接到远程服务器,我知道用户名和主机名,并且我也有该private_key.pem文件。如何使用 VSCode 连接到该虚拟机?

我在互联网上的解决方案中遇到了这个错误,这是合理的,因为我没有private_key.pem在任何地方导入这个文件,而且我不知道如何导入。

Permission denied (publickey)
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助。

我使用的是windows,但远程机器是ubuntu。

ssh visual-studio-code private-key

24
推荐指数
1
解决办法
6万
查看次数

parse.com安全

最近我发现parse.com是多么有用和简单.它确实加快了开发速度,并为您提供了现成的数据库来存储来自您的Web /移动应用程序的所有数据.

但它有多安全?根据我的理解,您必须在代码中嵌入您的应用程序私钥,从而授予对数据的访问权限.

但是,如果有人能够从您的应用程序恢复密钥怎么办?我亲自尝试过.我花了5分钟从标准APK中找到私钥,并且还有可能在您的javascript源代码中使用私钥进行硬编码构建一个Web应用程序,几乎任何人都可以看到它.

保护我发现的数据的唯一方法是ACL(https://www.parse.com/docs/data),但这仍然意味着任何人都可以篡改可写数据.

有人可以开导我吗?

security parse-platform private-key

23
推荐指数
1
解决办法
4696
查看次数

java.security.UnrecoverableKeyException:无法获取有关私钥的信息

我有以下几行来从Android上的密钥存储区获取私钥

KeyStore keyStore = KeyStore.getInstance("AndroidKeyStore");
keyStore.load(null);

// generating key pair code omitted

KeyStore.PrivateKeyEntry privateKeyEntry = (KeyStore.PrivateKeyEntry) this.keyStore.getEntry("alias", null);
Run Code Online (Sandbox Code Playgroud)

一切正常,但当操作系统从Android 5.1.1升级到Android 6.0.1时,第3行将java.security.UnrecoverableKeyException: Failed to obtain information about private key首先执行.但之后它会再次正常工作.现在我的解决方法是执行该行2次.与此同时,我也想知道是否有更好的方法来避免异常.

更新

异常跟踪

W/System.err? java.security.UnrecoverableKeyException: Failed to obtain information about private key
W/System.err? at android.security.keystore.AndroidKeyStoreProvider.loadAndroidKeyStorePublicKeyFromKeystore(AndroidKeyStoreProvider.java:217)
W/System.err? at android.security.keystore.AndroidKeyStoreProvider.loadAndroidKeyStoreKeyPairFromKeystore(AndroidKeyStoreProvider.java:253)
W/System.err? at android.security.keystore.AndroidKeyStoreProvider.loadAndroidKeyStorePrivateKeyFromKeystore(AndroidKeyStoreProvider.java:263)
W/System.err? at android.security.keystore.AndroidKeyStoreSpi.engineGetKey(AndroidKeyStoreSpi.java:93)
W/System.err? at java.security.KeyStoreSpi.engineGetEntry(KeyStoreSpi.java:372)
W/System.err? at java.security.KeyStore.getEntry(KeyStore.java:645)
W/System.err? at com.example.keystoretest.MainActivity.onCreate(MainActivity.java:113)
W/System.err? at android.app.Activity.performCreate(Activity.java:6251)
W/System.err? at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107)
W/System.err? at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369)
W/System.err? at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476)
W/System.err? at android.app.ActivityThread.-wrap11(ActivityThread.java)
W/System.err? at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) …
Run Code Online (Sandbox Code Playgroud)

java android keystore java-security private-key

22
推荐指数
1
解决办法
6529
查看次数

Java:如何从字符串生成PrivateKey?

我正在尝试对消息进行编码,SH1 RSA但我没有安全主题的经验,除了一些基本信息RSA.我被给了一个私钥作为String.我已经设法写下面的代码块来完成这项工作,但我不确定我是否正确地安全地完成了这项工作.

我不是专家,但在代码中将我的私钥作为String放置是不安全的我猜.谁能指导我?

String privateKeyString = "mykeyhere...";
byte[] privateKeyBytes = privateKeyString.getBytes();
String encodedPrivateKey = Base64.encodeToString(privateKeyBytes, Base64.URL_SAFE);

KeyFactory factory = KeyFactory.getInstance(RSA);
PKCS8EncodedKeySpec keySpec = new PKCS8EncodedKeySpec(encodedPrivateKey.getBytes());
RSAPrivateKey privateKey = (RSAPrivateKey) factory.generatePrivate(keySpec);

Signature instance = Signature.getInstance(ALGORITHM);
instance.initSign(privateKey);
instance.update(content.getBytes());
return new String(instance.sign());
Run Code Online (Sandbox Code Playgroud)

我的私钥形式如下:

"-----BEGIN PRIVATE KEY-----\n"+
"MIIE...\n"+
"cH0iRj...\n"+
"O0Hhj...\n"+
.
.
.
"fG6...\n"+
"B6/hF...\n"+
"3Mq38...\n"+
"-----END PRIVATE KEY-----\n"
Run Code Online (Sandbox Code Playgroud)

security android rsa private-key

21
推荐指数
1
解决办法
2万
查看次数

如何在Bash /终端中导出多行环境变量,例如:RSA私钥

我们的其中一个应用程序github-backup要求使用RSA私钥作为环境变量.

只需尝试将密钥导出到终端中,例如: text export PRIVATE_KEY=-----BEGIN RSA PRIVATE KEY----- MIIEpAIBAAKCAQEA04up8hoqzS1+ ... l48DlnUtMdMrWvBlRFPzU+hU9wDhb3F0CATQdvYo2mhzyUs8B1ZSQz2Vy== -----END RSA PRIVATE KEY-----

不起作用......因为换行符.

我做了一些谷歌搜索,但没有找到一个可行的解决方案...
例如:如何为AWS弹性豆设置多线RSA私钥环境变量

图片

错误: -----END RSA PRIVATE KEY-----': not a valid identifier

按照以下说明操作:http: //blog.vawter.com/2016/02/10/Create-an-Environment-Variable-from-a-Private-Key

创建一个keytoenvar.sh使用以下行调用的文件:

#!/usr/bin/env bash
file=$2
name=$1
export $name="$(awk 'BEGIN{}{out=out$0"\n"}END{print out}' $file| sed 's/\n$//')"
Run Code Online (Sandbox Code Playgroud)

图片 然后运行以下命令:

source keytoenvar.sh PRIVATE_KEY ./gitbu.2018-03-23.private-key.pem
Run Code Online (Sandbox Code Playgroud)

有效但似乎是一种" 啰嗦 "的方法......

有谁知道更简单的方法吗?
(我希望有一个" 初学者友好 "的解决方案,没有太多的"步骤"......)

environment-variables multiline private-key

21
推荐指数
7
解决办法
2万
查看次数

在为Android应用创建密钥库时拒绝访问

我正在尝试签署我的Android应用,以便我可以在Market中发布它.当我生成密钥库时,我收到拒绝访问错误.我该如何解决?

android密钥库选择

这就是我一直在努力做的事情:

  1. 右键单击Eclipse Helios中的项目.
  2. Android工具>导出签名的应用程序包.
  3. 点击下一步.
  4. 我检查"创建新的密钥库"并意识到它没有帮助我.它仍然要求密钥库的位置.所以我决定以艰难的方式去做.
  5. 关闭只读访问权限C:\Program Files\Java\jdk1.6.0_25\bin并授予该CREATOR OWNER组对该文件夹的完全控制权.
  6. 在Windows 7 64位上打开命令行.
  7. 遍历到C:\Program Files\Java\jdk1.6.0_25\bin.
  8. 运行keytool.
  9. 有访问被拒绝错误.

.

C:\Program Files\Java\jdk1.6.0_25\bin>keytool -genkey -v -alias company -keyalg R
SA -keysize 2048 -validity 10000 -keystore company.keystore
Enter keystore password:
Re-enter new password:
What is your first and last name?
  [Unknown]:  John Smith
What is the name of your organizational unit?
  [Unknown]:  Android
What is the name of your organization?
  [Unknown]:  Company
What is the name of your …
Run Code Online (Sandbox Code Playgroud)

android keytool private-key

20
推荐指数
5
解决办法
6万
查看次数

如何在C#中使用公钥和私钥加密技术

我想使用公钥/私钥技术加密数据.我的意思是,用接收器的公钥加密,接收器可以用自己的私钥解密.

我怎样才能做到这一点?您有任何建议或示例代码吗?

c# encryption cryptography public-key-encryption private-key

20
推荐指数
1
解决办法
4万
查看次数