rsa

Verify SHA1withRSA signature generated in Java (Android) with phpseclib

瘦欲@ 提交于 2020-01-21 07:17:40
问题 This is what I want to do: Generate a 512 bit RSA keypair in Java/Android Generate a SHA1withRSA signature for some message in Java Send message, signature and public key to PHP (for testing this will be done at the same time) Verify the message in PHP using phpseclib What I got so far: On the Java side: String msg = "Test message"; // generate keypair KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA"); keyGen.initialize(512); KeyPair keyPair = keyGen.generateKeyPair(); // generate

OpenSSL - Neither PUB key nor PRIV key:: nested asn1 error

与世无争的帅哥 提交于 2020-01-21 04:45:34
问题 I am trying to initialize OpenSSL::PKey::RSA using a public key, and it is not working. Following is the key pair: -----BEGIN RSA PRIVATE KEY----- MIIBOwIBAAJBALbkpbDFbZ54bM5ybwwdCqsUHjxWQF4B0Q1sAOBFEYdpxZJZ8dAz ycPzIgSlPc8yqjeqwJQtvCpktrntALpX1ksCAwEAAQJAYT0XyvBs48BrOSgmWm5m aab8nF/PQSv+FgDCRnryYue3WZOpUqITB0w6ivC68G/+Mf6IXyE4ljqw2iIAdjyv YQIhAOE20o2bLPMtziEOdH0KGpN0gNYpe38jGyvGw7k5gZd9AiEAz+TWZRJpc9yX 5dew3xcBtIhaTPFmVLgmfU7FwIWW32cCIQCvKK9LmUO1gouN5CsvUNtokbTeW/cD

主机漏洞-SSL/TLS 受诫礼(BAR-MITZVAH)攻击漏洞(CVE-2015-2808)【原理扫描】-RC4密码套件

Deadly 提交于 2020-01-20 03:28:11
一、漏洞分析 事件起因 2015年3月26日,国外数据安全公司Imperva的研究员Itsik Mantin在BLACK HAT ASIA 2015发表论文《Attacking SSL when using RC4》阐述了利用存在了13年之久的RC4漏洞——不变性弱密钥(《Weakness in the Key Scheduling Algorithm of RC4》,FMS 发表于2001年)进行的攻击,并命名为“受戒礼”攻击(Bar Mitzvah Attack)。 直到2015年3月,还有约30%的网络通信是由RC4进行保护的。通过“受戒礼”攻击,攻击者可以在特定环境下只通过嗅探监听就可以还原采用RC4保护的加密信息中的纯文本,导致账户、密码、信用卡信息等重要敏感信息暴露,并且可以通过中间人(Man-in-the-middle)进行会话劫持。 攻击方法和模式 攻击者嗅探监听大量的SSL链接,可以判断第一个加密消息包含SSL的完成消息和HTTP请求,都是具有可预测的信息的。然后等待一个不变性弱密钥的链接到来,当获取到一个弱密钥链接时候就可以提取出LBS。当弱密钥使用的时候,明文和密钥会进行异或,攻击者可以看到生成的密文模式。 攻击者同样也进行DNS投毒,将所有的链接链接到一个恶意的主机,主机进行中间人攻击,能够有效地进行大量用户的嗅探监听和会话劫持。 漏洞原理和细节 根据

java 常用加解密算法总结

谁都会走 提交于 2020-01-19 05:19:38
细心的开发会发现,我们在下载文件时,会带有密文,这是干嘛的呢,是用来校验下载的文件完整性和正确性,防止文件被篡改。 如下图: 加解密测试代码: package com; import java.io.File; import java.io.FileInputStream; import java.io.UnsupportedEncodingException; import java.security.KeyFactory; import java.security.KeyPair; import java.security.KeyPairGenerator; import java.security.SecureRandom; import java.security.interfaces.RSAPrivateKey; import java.security.interfaces.RSAPublicKey; import java.security.spec.PKCS8EncodedKeySpec; import java.security.spec.X509EncodedKeySpec; import javax.crypto.Cipher; import javax.crypto.SecretKey; import javax.crypto.spec

asymmetric cryptographic algorithm

跟風遠走 提交于 2020-01-19 01:45:33
https://baike.baidu.com/item/非对称加密算法/1208652?fr=aladdin 主要算法 编辑 RSA 、 Elgamal 、背包算法、Rabin、D-H、 ECC (椭圆曲线加密算法)。 使用最广泛的是RSA算法,Elgamal是另一种常用的非 对称加密算法 。 Elgamal由Taher Elgamal于1985年发明,其基础是DiffieˉHellman 密钥 交换算法,后者使通信双方能通过公开通信来推导出只有他们知道的秘密密钥值[DiffieˉHellman]。DiffieˉHellman是Whitfield Diffie和Martin Hellman于1976年发明的,被视为第一种 非对称加密算法,DiffieˉHellman 与RSA的不同之处在于,DiffieˉHellman不是加密算法,它只是生成可用作对称密钥的秘密数值。在DiffieˉHellman密钥交换过程中,发送方和接收方分别生成一个秘密的 随机数 ,并根据随机数推导出公开值,然后,双方再交换公开值。DiffieˉHellman算法的基础是具备生成共享密钥的能力。只要交换了公开值,双方就能使用自己的私有数和对方的公开值来生成对称 密钥 ,称为共享密钥,对双方来说,该对称密钥是相同的,可以用于使用 对称加密算法 加密数据。 与RSA相比

What to sign for DTLSv1.0 Certificate Verify Message with RSA

雨燕双飞 提交于 2020-01-16 08:15:31
问题 I'm using DTLS v1.0 to communicate with a server. I'm having some trouble figuring out exactly what to do to generate the certificate verify message . I've been reading the RFCs (DTLSv1.0 and TLS1.1, which DTLS v1.0 is based on) but they're somewhat non-specific when it comes to this particular message. I see the structure of the message is as below, and I know the signature type is RSA . struct { Signature signature; } CertificateVerify; The Signature type is defined in 7.4.3.

JAVA——RSA加密【X509EncodedKeySpec、PKCS8EncodedKeySpec、RSAPublicKeySpec、RSAPrivateKeySpec】

倖福魔咒の 提交于 2020-01-16 06:27:11
基本概念 RSA加密算法 :SA加密算法是一种非对称加密算法。在公开密钥加密和电子商业中RSA被广泛使用。RSA是1977年由罗纳德·李维斯特(Ron Rivest)、阿迪·萨莫尔(Adi Shamir)和伦纳德·阿德曼(Leonard Adleman)一起提出的。当时他们三人都在麻省理工学院工作。RSA就是他们三人姓氏开头字母拼在一起组成的。 RSA是目前最有影响力的公钥加密算法,该算法基于一个十分简单的数论事实:将两个大素数相乘十分容易,但那时想要对其乘积进行因式分解却极其困难,因此可以将乘积公开作为加密密钥,即公钥,而两个大素数组合成私钥。公钥是可发布的供任何人使用,私钥则为自己所有,供解密之用。 解密者拥有私钥,并且将由私钥计算生成的公钥发布给加密者。加密都使用公钥进行加密,并将密文发送到解密者,解密者用私钥解密将密文解码为明文。 API https://docs.oracle.com/javase/7/docs/api/index.html X509EncodedKeySpec : 该类表示公钥的ASN.1编码,根据ASN.1类型 SubjectPublicKeyInfo 进行编码。 SubjectPublicKeyInfo 语法在X.509标准中定义如下: SubjectPublicKeyInfo ::= SEQUENCE { algorithm

CentOS设置服务开机自动启动

岁酱吖の 提交于 2020-01-16 05:45:28
安装OpenSSH Server 首先,我们搜索一下CentOS的软件库里面有没有已经定义好的SSH服务器包: $ yum search ssh ... ... openssh.x86_64 : An open source implementation of SSH protocol versions 1 and 2 openssh-askpass.x86_64 : A passphrase dialog for OpenSSH and X openssh-clients.x86_64 : An open source SSH client applications openssh-ldap.x86_64 : A LDAP support for open source SSH server daemon openssh-server.x86_64 : An open source SSH server daemon ... ... OpenSSH是Secure Shell的一个开源实现。从上面的搜索结果可以看到,CentOS的软件库里面已经有了OpenSSH的服务器包(openssh-server)和客户端包(openssh-clients),用yum install可以直接安装。 $ yum install openssh-server OpenSSH

RSA function generates public key (e) always to 17

我们两清 提交于 2020-01-16 04:35:20
问题 I've been working on a project based on RSA key exchange and I have used Crypto++ Library. I followed the guidelines in https://www.cryptopp.com/wiki/Raw_RSA and my project works fine. However, I noticed that the public key is always fixed to 17 10 = 11 16 and when I looked in the rsa.cpp in Crypto++ that public key is fixed! Again, my project works fine, but I just want to know why.. 回答1: I noticed that the public key is always fixed to 17 10 = 11 16 and when I looked in the rsa.cpp in

【linux】小型ssh服务器程序dropbear配置及使用方法

三世轮回 提交于 2020-01-15 20:58:23
亲测可用! 创建配置文件存放目录。 mkdir /etc/dropbear 生成配置文件及密钥对。 dropbearkey -t rsa -f /etc/dropbear/dropbear_rsa_host_key 启动服务,常用端口22 dropbear -p 22 来源: CSDN 作者: 摩羯座程序员 链接: https://blog.csdn.net/qq_43248127/article/details/103994008