加密和JSON序列化对象

时间:2015-04-28 16:51:48

标签: c# json encryption

我有一个MVC应用程序和一个API,我需要将MVC应用程序中的自定义凭据对象传递给每个请求的API。我想加密Credentials对象,并将其发送到请求的标头中。

我该怎么做?

我发现了大量有关如何加密字符串的文章,但没有关于以XML格式加密对象的文章。

3 个答案:

答案 0 :(得分:1)

您的要求并不完全清楚,但听起来JSON Web Tokens.可能会遇到这些要求。不同平台上有许多库可以为您处理必要的加密。使用JWT,重点是令牌的身份验证和完整性,而不是保密。

如果您想实现自己的方法,请按照教程加密字符串,因为JSON 是一个字符串。

答案 1 :(得分:0)

  1. 制作您的凭据对象Serializable
  2. 按照here所述将对象序列化为字符串。
  3. 加密字符串。
  4. 如果您坚持使用JSON序列化,则可以使用thisthis示例。

答案 2 :(得分:0)

这里的关键是将对象转换为字符串。正如你所说,你已经看过这样的例子(加密字符串)。使用json.Net的DeserializeObject方法生成一个字符串,加密该字符串,然后在这里使用add方法; https://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.headers%28v=vs.110%29.aspx将其附加到标头集合。

在后端,您只需解密,反序列化并继续前进。

请注意,正如评论中指出的那样使用HTTPS之类的东西是首选。为什么要加密自己,然后在你可以使用为你做的协议时发送HTTP?