PasswordVault —— 在 UWP 应用中安全地保存密码

在开发ERMail应用时,面对IMAP协议需要存储密码的问题,采用了微软的PasswordVault来实现安全保存。PasswordVault是UWP应用独立且安全的密码管理器,确保了即使黑客攻击,没有用户账户权限也无法解密密码。通过AddPassword和RetrievePassword方法进行密码的保存和读取,简化了UWP平台特定的密码管理实现。
摘要由CSDN通过智能技术生成

只要你做过自动登录,一定会遇到密码的安全问题。现在大部分的网络服务都已经支持 Token 了,有些已经支持 OAuth2.0,这意味着客户端不怎么需要关心密码的安全保存问题。

但是,依然还有一些古老的服务和协议需要直接传输密码,比如邮件的 IMAP 协议。


我在 ERMail 应用的开发中就遇到了这样的问题,作为一款邮件客户端,IMAP 协议下的自动登录依然要在用户的本地保存密码。

无论你采用哪一种加密协议保存用户的密码,由于客户端与黑客的信息量都是相同的,所以客户端能解密出来黑客就一定能解密出来。所以,单纯地依靠应用自身是无法完成安全的密码保存的,利用操作系统、密码服务器或者其他硬件作为中转是一定需要采用的方案。

后两者的成本较高,采用操作系统自带的凭据管理器是成本较低的方案。于是我找到了 PasswordVault

微软官网对 PasswordVault 有全面的介绍:PasswordVault Class (Windows.Security.Credentials) - UWP app developer - Microsoft Docs,使用起来也是非常简单的。通过 Add(PasswordCredential) 方法完成密码的保存,使用 Retrieve(String, String?wt.mc_id=MVP) 完成密码的读取。

每一个 UWP 应用之间的 PasswordVault 是独立且互相不可访问的,普通用户也无法直接获取到密码;对于黑客,如果无法黑掉用户账户,也是无法解密出密码的,所以在一般使用场景下,安全性是够的。

如果需要保存密码:

var vault = new PasswordVault();
vault.Add(new PasswordCredential
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值