首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当使用您自己的API时(Dog Fooding)。你如何避免泄露秘密钥匙?

当使用您自己的API时(Dog Fooding)。你如何避免泄露秘密钥匙?
EN

Software Engineering用户
提问于 2013-09-02 19:27:54
回答 2查看 917关注 0票数 3

我在soundcloud的api上阅读了这篇文章:

http://backstage.soundcloud.com/2011/08/soundcloud-mobile-proxies/

它谈到如何使用您自己的API。我不明白的是他们是如何避免泄露秘密钥匙的。如果您通常将秘密密钥给将在API中使用它的开发人员,那么您如何将秘密密钥交给自己,避免在不通过有线传输的情况下泄露密钥?我假设每个用户都有一个新的密钥。否则,每个用户都将拥有相同的密钥和一个新的公钥,我不确定这是否有效。

我不是在说开发人员。我说的是像我们这样的用户是堆栈Exchange (应用程序本身的实际用户)。我的应用程序将消耗它自己的API。注册这个应用程序的每个用户(我想)都会得到一个私钥和公钥。对API的每次调用都需要(潜在地)使用公钥和私钥进行身份验证。如果在这种情况下,用户是应用程序的常规用户,那么如何向用户获取私钥。或者这不是最好的方法吗?

EN

回答 2

Software Engineering用户

发布于 2013-09-04 16:37:57

加密安全的方法是每个客户端生成自己的密钥,并向服务器生成密钥签名请求。然后,服务器检查传入的请求,并决定是否要对该密钥进行签名。

然后API服务就像这样工作。它需要使用证书进行客户端身份验证。如果证书由服务器授权机构签名,并且不在阻止列表中,则连接将被接受,否则连接将被拒绝。

最终结果是,只要您只在确定签名请求的源时才签署签名请求,那么您就可以通过在服务器上保持一个阻止列表来确保客户端是它声称的那个人(或者它的私钥已被破坏),有效签名的证书仍然不能被允许访问。

票数 3
EN

Software Engineering用户

发布于 2013-09-04 16:09:22

我想与https现在一样的方式是:您不公开私钥,只公开公钥。只有内部代码才能根据私钥确认公钥。

票数 1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/210239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档