March 2nd, 20152014年度总结

‘How time flies!’ – 难得中学学了这么有用的一句话. 另 js写得多了, 连字符串都习惯用单引号了 ;-)

时间过的真快, 一年时间就这么过去了, 工作如果算上实习的话马上就要满十年(眼泪…)

简单总结一下过去的一年:

  1. 买了第一辆车 – 迫于老婆大人的要求, 不过事实证明有车还是方便生活不少.
  2. 换了工作
  3. 一次简短的旅行
  4. 终于拿到了驾照, 上海学驾照太麻烦了, 找了个上海学外地考的, 就别提多坑了….
  5. 终于还清了大多数的私人债务,  md, 终于要开始积累财富了(虽然很少…)

有娃之后的私人时间少了好多, 不过以前时间多的时候也没干啥正事, 游戏打的太多. 貌似现在过了游戏的年纪了, 重新下载过LOL, WOW, 结果都没玩了多久就玩不动了, 一是时间不多, 二是没有什么游戏的激情, 很难再找回几年前天天上班似的打Raid的感觉了.

另外感觉自己进步的一点是终于意识到每个人都有自己犀利的地方,  而以前看事物太过片面, 羞愧啊.

读书太少, 不算读的一些网络小说的话, 这一年基本就没好好看过什么书, 相应的思考进行的也少, 更加碌碌了. . .

另外, 不要随便做宏大的计划, 事实证明自己头脑发热做的计划基本都没完成. 做事还是要从小做起, 慢慢做下来.

June 2nd, 20142013年度总结

迟到了半年的总结…

2013年: 有娃了, 天天都有了要忙碌的对象.

工作状态比较差, 浅尝了一些新技术, 写了不少代码(没啥用处)

其他倒很少想什么了, 忙不过来~

项目放在github上, 主页在: http://pangwa.github.io/bae-message

现在只实现了邮件功能, 以后可能会增加一些新的基于BAE云消息模块的功能.
用法比较简单, 参见github上的例子就会了

// load Bae module
var BaeMessage = require('bae-message');
// initialize BaeMessage with key/secret/queue
// You can find your key/secret at: [BAE Page](http://developer.baidu.com/bae/ref/key/)
var bae = new BaeMessage({
  key : 'your key',
  secret : 'your secret',
  queue: 'queue ID'
});

bae.mail('fromAddress', 'to', 'subject', 'mail body');

也可以通过 npm install bae-message 来直接安装这个模块.

有关百度云消息的介绍可以参考: http://developer.baidu.com/cloud/mq

不得不说现在百度云的问题还是有些问题, 调了好大会才出来.

March 9th, 20132012年度总结

这一年的总结比前几年更加的晚了0,0 【和去年的相似的开头】

2012年完成了人生中的一件大事 – 结婚了,要为了生活好好努力。

近一年很少锻炼, 轮滑, 自行车都没有进行, 上半年婉拒了原来一起去北京的朋再骑车去玩一回的邀请, 等一切步入正轨了再拾起这些爱好。

有时候会想起那过去的人和事, 然后就用各种办法翻找相关的记录 – 这样做也挺有意思地.

October 6th, 2012DirectUI 及相关UI 库

这两天偶然发现了DirectUI相关的技术介绍, 当然这都是很老的技术了(六七年前就有讨论).

技术的原理基本就是用DirectX直接绘制控件, 可以实现很好的视觉效果, 一些动画的支持也不错, 找了一下DirectUI的开源项目, 貌似能找到的就只有DuiLIb了, 它的一些例子很不错, 实现的效果比较帅(像仿360安全卫士/QQ界面).

既然有基于DirectX的库, 那么是不是也有基于另一个图形库-OpenGL的类似项目呢? 再搜索了一下, 果然也有不少. 比如:BeGUI 库.不过这个项目基本已经停工了.

这些项目确实实现了一些很好的特性, 比如很容易支持皮肤, 速度较快等. 可以一试, 不过个人认为这些项目在设计上仍需创新, 理想的C++ GUI框架应该能够大大简化界面开发的复杂度, 而现在用C++写界面的最大困扰就是实在是太麻烦了. 当然QT确实不错, 已经很简单了.

本来想尝试在客户端和服务器端使用RSA加密通信, 来增强通信的安全性.

我的客户端使用.net, 服务器端使用php. 然后噩梦就开始了.

首先php端的实现我采用的是phpseclib, 一个号称兼容openssl RSA加密, 支持OAEP,PKCS#1 padding的加密库. 客户端刚开始使用的是.net自带的加密库RSACryptoServiceProvider .

经过反复的尝试后, 发现无论是客户端还是服务器端, 加密后的字符串都不能在另外一边正确解密. 而通过phpseclib生成的key, .net端也不能正确加载.

经过一段时间的研究, 得出以下结论.

phpseclib生成的key, 是以明文base64编码保存的, 而.net的api则需要使用原始的key, 所以再加载时, 要先用base64解码 phpseclib生成的公私钥, 然后再加载, 经过尝试后, 发现偶尔会能成功.

但是这种情况下仍然无法正常解码加密后的信息.

再研究发现, RSA加密的标准的实现会有很多细节上的差异, 而这些差异则造成不同库之间协作的问题, 异同包括:

  1. 公私钥的格式不一样
  2. Padding格式不一样(即使号称用了同一种padding的库的结果貌似也不一致, (padding就是说会随机的往加密信息里填充一些字符, 来让加密更加难以破解)

所以要找到两个能协作很好的加密库很重要啊,

试了一些其他的.net的加密库, 貌似都不能和phpseclib很好的协作. 而由于时间关系, 就没有再继续研究这个问题了….


© 2007 pangwa's Blog | iKon Wordpress Theme by Windows Vista Administration | Powered by Wordpress