大佬们好,我现在有公开的接口提供给第三方,第三方通过我的这些接口来获取数据。
现在我不想其他人随意调用我的这个接口,了解到了可以通过接口加签验签的方式实现,我想用那个 非对称加密RSA来做。又了解到了RSA中是用 私钥(长的那个)加签,公钥(短的那个)验签,那么是要我把私钥给第三方,然后我留公钥验证嘛,可是又看到其他人说私钥要自己保存,还请懂得大佬帮忙解答一下,不胜感激!
应该是第三方生成密钥对,保留私钥,提供公钥给你。
第三方使用私钥加签,你使用公钥验签。
其实使用HTTPS的双向验证模式就行,已经把这个验证逻辑集成到协议里面了。
可以看这篇文章简单的了解一下:https://www.jianshu.com/p/2b2d1f511959?utm_campaign=haruki
您好,我是问答小助手,你的问题已经有小伙伴为您解答了问题,您看下是否解决了您的问题。
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
使用加签和验签验证对方身份的做法,这个流程是,第三方用第三方的私钥加签消息,然后你这边用第三方的公钥解签消息,正确解签的话说明对方的身份有效,否则无效;你用你的私钥加签消息,第三方使用你的公钥解签消息,这个过程是对方确认消息是由你发出的。所以你理解反了
关于RSA不管是加密解密还是加签验签,记住都不能把自己的私钥暴露出去。加密解密是为了保证消息不会被泄露。加签和验签的功能是保证数据的完整性,和消息发送方的身份的正确性
具有看谁做验签,验签方拿公钥,生成密文方拿私钥。如果双发都要验证则需各自生成配套的公私钥。
谢谢各位解答,我了解了,应该是我拿第三方给我的公钥,第三方用他的私钥签名,然我拿给我的公钥验证第三方的身份