功能
文档树文档加密(非真正的加密)
注意: 该代码并不会加密原文,只是打开文档需要输入密码而已,且是前端加密,专业人员可以通过访问 js 源码分析出密码,因此请勿用于重要信息的保密!
使用说明
1 文档树右键选择加密/取消加密即可
2 查看所有加密文档(把下面的代码粘贴到任意文档中即可)
{{//!js_esc_newline_return (async ()=>{_esc_newline_ const ids = await fetchSyncPost("/api/file/getFile", {path:'/data/storage/encrypted_ids.json'});_esc_newline_ const result = await fetchSyncPost('/api/query/sql', { "stmt":`select id, content from blocks where id in( ${ids.map(item=>`'${item}'`).join(',')})` });_esc_newline_ const timer=setInterval(()=> {_esc_newline_ if(!item.querySelector('.protyle-wysiwyg__embed')) return;_esc_newline_ clearInterval(timer);_esc_newline_ if(!result || !result.data) return;_esc_newline_ result.data.forEach((row)=>{_esc_newline_ item.querySelector(`.protyle-wysiwyg__embed[data-id="${row.id}"]`).innerHTML = row.content;_esc_newline_ });_esc_newline_ });_esc_newline_ return ids;_esc_newline_})();}}
3 注意:暂不支持文件夹,不过可以通过先获取文件夹所有文档的 id 后放入/data/storage/encrypted_ids.json 文件中实现
4 所有文档共用一个密码,一个解密所有都解密(暂不支持对单个文档单独设置密码)
5 参数 const pw = '12345123abcde45667890';
是解密密码,前中后各 5 个字符的干扰码,所以你的真实密码在两边,可通过修改 getRealPw 函数的默认参数,修改干扰码个数,所以默认密码是 123456
6 参数 const expireTime = 0;
是解密后的过期时间,单位秒,0 代表不过期,即直到下次刷新页面前一直有效
7 加密的文档 id 存储在 /data/storage/encrypted_ids.json 文件中
代码
效果
【免责声明】
由于涉及文件隐私或保密,请不要对重要信息使用该功能,使用前请做好备份工作,由此带来的任何后果自负!!!均与作者及代码无关!!!
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于