REST Api身份验证-交换私钥

REST Api身份验证-交换私钥,rest,authentication,grails,hmac,Rest,Authentication,Grails,Hmac,我正在将移动应用程序的RESTAPI添加到我现有的GrailsWeb应用程序中。因为我很难将OAuth2提供者集成到我的应用程序中,所以我将实现我自己的HMAC机制 HMAC使用密钥,我想要的是,应用程序的每个用户都有自己的密钥。现在的问题是如何在API和移动设备之间以安全的方式传输秘密 当然,所有通信都将通过SSL进行。但当第一次通过网络连接时,从服务器向移动客户端发送客户端机密是否安全 或者我应该使用一个秘密并将其存储在移动客户端上,这可以很容易地进行反向工程 或者可能有其他更好的方法来实现

我正在将移动应用程序的RESTAPI添加到我现有的GrailsWeb应用程序中。因为我很难将OAuth2提供者集成到我的应用程序中,所以我将实现我自己的HMAC机制

HMAC使用密钥,我想要的是,应用程序的每个用户都有自己的密钥。现在的问题是如何在API和移动设备之间以安全的方式传输秘密

当然,所有通信都将通过SSL进行。但当第一次通过网络连接时,从服务器向移动客户端发送客户端机密是否安全

或者我应该使用一个秘密并将其存储在移动客户端上,这可以很容易地进行反向工程

或者可能有其他更好的方法来实现它?

您可能需要研究并实现自定义机制

下面是Amazon如何将其用于REST请求的示例:

和示例java代码