起因
Hexo会将我们本地编写好的markdown文章进行编译,然后生成静态页面部署到服务器之中。
但有些文章我们不希望公开,希望将文章进行加密,用户只有输入正确的验证码之后,才能进行访问。
这种情况,wordpress、emlog等其他博客系统很容易进行设置,但是Hexo却不行。
为了解决这个需求,我们需要引入hexo-blog-encrypt
。
特性
- 一旦你输入了正确的密码, 它将会被存储在本地浏览器的localStorage中。再次访问,不需输入密码。
- 支持按标签加密。
- 所有的核心功能都是由原生的API所提供的。 在 Node.js中, 我们使用 Crypto。在浏览器中, 我们使用 Web Crypto API。
- PBKDF2, SHA256 被用于分发密钥, AES256-CBC 被用于加解密, 还使用 HMAC 来验证密文的来源, 并确保其未被篡改。
- 广泛地使用 Promise 来进行异步操作, 以此确保线程不被杜塞。
- 过时的浏览器将不能正常显示, 因此, 请升级浏览器。
使用说明
1.安装
1 | npm install --save hexo-blog-encrypt |
2.快速使用
将 “password” 字段添加到文章信息头:
1 | --- |
设置优先级
文章信息头 > 按标签加密
3.高级设置
1)文章信息头
1 | --- |