Side Menu
分类目录

技术开发

   

用 Mac 端 Safari 插件,一键存网页

用 Mac 的小伙伴,每天上网,通过 Safari 浏览器畅游网页,看到旅行攻略,同城活动,奇闻异事,以及专业知识,难免需要保存下来,方便日后查看。
 
因此我们专门针对 Safari 浏览器做了网页剪辑插件,只需轻轻一点,就可一键收藏有价值的网页到为知笔记,方便日后借鉴和学习。
 
下载并手动安装

 

现在,您只需要简单几步,就可以快速收藏 Safari 浏览器中的网页了。
1.

为知笔记助力CSDN打造“开源夏令营“!

受CSDN社区运营团队邀请,为知笔记参与了由CSDN(CODE)、高校CLUB和腾讯基金会主办的“2014开源夏令营”的活动,由创始人@为知笔记老魏 亲自担任导师,以基于Qt的开源项目——为知笔记(WizNote)开源工程为基础进一步完善应用在Mac/Linux上的功能。

“2014开源夏令营”是一场专门面向高校学生的“开源项目实习”,旨在引导学生利用暑期空闲时间为开源软件、开源社区做出贡献,推动国内开源软件和开源社区的发展。只要参加夏令营并且成功完成任务就可以获得由腾讯基金会提供的5,000元奖金。

为知笔记为Windows客户端为用户提供了丰富的插件支持,利用html+JavaScript开发出的插件实现了用户所需的各种功能,但目前Mac/Linux客户端尚不支持插件。本期夏令营为知笔记的提案就是Mac/Linux客户端插件的实现,参与者届时将有机会全面接受为知笔记创始人@为知笔记老魏 的亲临指导!

活动报名即日起全面开始,截止日期为7月4日。一个更优秀的为知期待你的努力,另有5,000元奖金等你来拿 ,欢迎广大校园开源技术爱好者踊跃参加!

 

为知笔记提案页:http://code.csdn.net/os_camp/36/proposals/55#

2014开源夏令营主页:http://code.csdn.net/os_camp

15Five 周报模版

周报不知道写什么?
15Five.com 提供了简洁的模版,员工每周仅需花费15分钟回顾编写,管理者只需5分钟阅读,即可达到上下沟通的目标。高效而简洁。
在为知笔记中,可以通过模版方便的创建周报
效果如下:

[插件开发]Wiz插件认领计划

Wiz目前提供了丰富的插件,由于功能日趋繁多,插件也越来越多,因此希望能有更多有经验和经历的朋友,一起来维护和开发这些插件。另外,也希望能有更多的朋友,来开发更多的插件。
 
目前Wiz几乎所有的插件,都是开放源代码的,除了有少部分是通过C++/C#编写之外,其它大部分,都是HTML+JavaScript编写的。因此,只要您熟悉HTML和JavaScript,就可以参与Wiz插件的开发。
 
参与Wiz插件开发,您可以至少获得一年的VIP会员资格,如果用户反馈良好,则可以获得永久的VIP会员资格。如果您的插件使用范围很广,您还可以进行收费。另外所有参与的朋友,都可以和Wiz开发人员实时交流,共同进步。
 
利用Wiz这个平台,您编写的插件可以很容易的获得大量的用户群,并且可以很容易的和您的用户进行交流。
 
您可以编写新的插件,也可以扩展目前Wiz的插件。如果您想不起来有什么要做的,但是又想参加,也可以联系我们,我们有很多的想法,可以给您参考。
您只需要具备以下任意一种技术,就可以参与Wiz插件开发:
  • HTML和JavaScript
  • 或者C#/Visual Basic等.NET语言
  • 或者C++/Delphi等高级语言
参考资源:
 
 

[插件]为知笔记灵感收集器

为知笔记灵感收集器是一个小工具,运行后可以在桌面上出现一个小窗口,让您随时记录一些想法,灵感等等。输入的数据,会保存到为知笔记里面。
下载后解压缩到任意目录,里面只有一个exe文件,双击执行就可以了。

[插件]自动转换纯文本文档里面的链接

对于某些导入的文档,例如text文件,如果里面包含链接,例如http://www.wiz.cn/ ,也不会被转换为链接,这样在阅读文档的时候,将无法直接点击这个链接,打开相应的文档。
 
使用这个插件,可以在您阅读类似的文档的时候,自动给链接文字增加链接。
 
 
 

为知笔记加密文档格式

为知笔记(Wiz)的文档存储,是采用zip方式压缩的html文件,您可以使用任意的解压缩软件打开,例如WizZip, WinRAR或者7z。
为知笔记提供了文档加密的功能,使用加密功能后,为知笔记会把存储的zip数据采用RSA+AES方式重新加密,从而保证数据内容的安全。

为知笔记加密系统的证书

要给为知笔记文档加密,用户必须申请一个证书,证书就是RSA算法的N, e, d三个数据。其中公钥用于加密,默认保存在Wiz数据库里面,私钥用于解密,使用用户提供的密码作为key,采用AES算法进行加密后保存。用户可以选择将证书保存到数据库。用户可以选择备份成文件,或者备份到服务器(加密后的证书)。
  • 用户证书里面的公钥,采用明文存储,保存在为知笔记数据库里面,用于加密文档(加密后的文档无法用公钥解密,必须用私钥才可以解密)
  • 用户证书里面的私钥,使用用户提供的证书密码,采用AES算法加密,保存到Wiz数据库里面。用户可以选择备份成文件,或者被分到服务器(加密后的数据)。只有用私钥,才可以解密用户的文档。因此,用户必须提供证书以及相应的密码,才可以解密文档。
  • RSA算法密钥长度:1024bit
  • AES算法密钥长度:256bit
注意:为知笔记里面不保存任何用户证书的密码,因此用户如果丢失了证书的密码,将无法解密任何文档。

为知笔记文档加密流程

为知笔记文档加密,采用了RSA和AES混合加密的方式。加密流程如下:
  1. 随机生成两个GUID字符串连接起来作为AES加密的密钥。对于一个文档,每次加密的时候,该AES密钥都是不同的。
  2. 使用RSA算法,采用公钥加密保护步骤1产生的AES的密钥,加密后的密钥,保存在ziw文件头。该密钥必须使用证书里面的私钥进行解密。
  3. 使用AES算法,使用步骤1获得的随机密钥,加密原始的ziw(zip)文件,获得密文,保存在ziw文件头后面。
从上面的步骤可以看到,每一个加密ziw文档的密钥,都是随机的。ziw文档的安全性,取决于证书的私钥的安全性,也就是用户的证书以及证书的密码。

加密的ziw文件格式

加密的ziw文件,有一个文件头,记录了加密文档版本,算法,RSA密钥(密文)等数据,定义如下:
#pragma pack(1)
#define WIZKMZIWFILE_SIGN_LENGTH            4
#define WIZKMZIWFILE_KEY_LENGTH                128
#define WIZKMZIWFILE_RESERVED_LENGTH        16
struct WIZKMZIWHEADER
{
    char szSign[4];
    UINT nVersion;
    UINT nKeyLength;
    BYTE szEncryptedKey[WIZKMZIWFILE_KEY_LENGTH];
    BYTE szReserved[WIZKMZIWFILE_RESERVED_LENGTH];
};
#pragma pack()
其中szSign是一个四个字节的文档类型标记,可能的值为:
ZIWR:RSA和AES混合算法加密的文档。
ZIWA:AES算法加密的文档。概算法目前未实现。
nVersion:加密文档的版本,目前为1。
nKeyLength:AES算法加密后的密钥的长度。不超过128个字节
szEncryptedKey:AES算法加密后的密钥数据。
szReserved:保留数据。全部为0
文档加密后的数据,被保存在文件头后面。

加密使用的算法库

Wiz加密使用的算法库,是著名的加密算法库Crypto++® Library。

安全性总结

为知笔记加密的安全性,取决于证书和用于加密证书的密码。要解密一个文档,必须提供证书以及用于加密证书的密码,二者缺一不可。因此我们建议您在初始化加密的时候,尽量设置一个比较复杂的证书密码,同时将该证书密码记在纸上,保存在安全的地方。
另外,为了方便多台电脑使用加密功能,您可以选择将证书备份到服务器上面。因为证书的密钥被您设置的密码加密了,因此您不用担心证书会被盗用。