指环王?DNSSEC,七个传说中的互联网之王

转自solidot

负责管理互联网的非盈利组织ICANN正在全面部署DNSSEC(域名系统安全扩展),它为用户DNS查询的每一步增加一个数字签名验证,以防止第三方伪造DNS数据。上月DNS Root Zone完成了数字签名,这是部署DNSSEC的重要一环。DNS是一个巨大无比的网络地图,导引冲浪者的航线,而DNSSEC则相当于灯塔,保证航行的安全,那么ICANN如何确保灯塔的安全呢?如果DNSSEC因为物理攻击如核爆或网络攻击而瘫痪(这不太可能,因为它保存在美国东西海岸两个高度安全的独立设施内),谁能重建DNSSEC?ICANN或许是受到了《指环王》的启发,它制定一项计划——当DNSSEC崩溃,分布在全世界的7个人将拿着密钥,来到美国的一个秘密数据中心合作解开DNSSEC的根密钥,重建DNSSEC——如果他们也遭遇不幸,那么我们将要回到旧的DNS时代。7个人只需5位就能破解根密钥——这种加密方法被称为Shamir’s Secret Sharing——密钥被分成几部分,每一部分都独一无二,其中几部分或全部联合起来就能解密密钥。7位被授予重任的人是各大洲的代表:他们分别是美国的Dan Kaminsky,加拿大的Norm Ritchie,英国的Paul Kane,另外四个人分别来自中国、非洲的布基纳法索、和南美特立尼达多巴哥,以及捷克共和国。密钥其实是两个相同的智能卡,被密封在透明的塑料袋内。

转自灰色轨迹

日前有业内消息报道,七名神秘人物近日已经被选举出来担当国际互联网(internet,因特网)系统最重要的角色,这七名特殊人士被授权在面临“重大灾难性事件”的时候重启整个国际互联网系统。这样的故事听起来是不是有些像科幻电影里面的惊人情节呢?或者正如Micheal Bay执导的《变形金刚》电影里一样,当人类面临重大灾难的时候,掌握国际互联网命脉的七巨头就该出手了。

这七名国际互联网“关键控制人”分别是英国的Paul Kane,美国的Dan Kaminsky,中国的Jiankang Yao,布基纳法索的Moussa Guebre,特立尼达和多巴哥的Bevil Wooding,捷克的Ondrej Sury以及加拿大的Norm Ritchie;他们就是整个互联网领域可能的救世主,某种程度上来说也是国际互联网之王,不过我们但愿所谓的“重大灾难性事件”永远不要到来。

据透露,此计划只是由一组计算机科学家小组开发的叫作“DNSSEC”安全系统的一部分而已,这套DNSSEC安全系统是为了确保国际互联网可以在正常轨道上运行。上述的七名“关键控制人”可以在出现重大灾难事件的时候有权对DNSSEC安全系统进行刷卡操作,从而将国际互联网恢复到正常状态。不过据称此重启仅会影响到那些采用了DNSSEC安全系统的网站,不过DNSSEC未来可能会成为真正的安全协议。

那么,来自中国的那位神秘的人物到底是谁呢?

据说是一位叫Jiankang YAO

的人物。

经过一番搜索,找到了官方wiki上的这个地址

不过,既然是cnnic的人,我怎么就觉得这么不可靠呢?。。

对不起,我对这个组织印象里不是那么好= =

不过呢,既然有七个人,权利就得到了制衡,多好呀~

地球OL是个好游戏

摘自acfun网友的评论:

509楼   午夜党 @  10-07-23 20:13:30   说:

人生就是一个游戏
你出生之前 上帝曾经给你三个选项
easy:你将诞生在欧美发达国家,生活压力不大,事业不一定轻松,但总归是公平竞争
normal:你将诞生在亚太地区发达国家,生活压力稍大,虽然没多少选择的余地,但是你总能得到谋生的办法
hard:欢迎来到天朝

所以天朝的同胞们,你们都有最勇敢的灵魂
你们才是强者,才敢于选择这里
美帝之类,那都是新手区
所以抬起头来,骄傲的活下去!
(..够励志吗?)

来源(acfun):http://124.228.254.234/html/ent/20100721/121592.html

写作频率

又是很久很久的没有正儿八经的写一篇博文什么的了。

对于blog这种东西,有固定的写作频率是非常重要的,也正因为没有什么固定的写作频率,所以来这看的人也不多。但是呢,有时候会遇到这样那样的问题,没什么东西好写了,或者不想写,或者忙于其他的事情而没有写。总之这样那样的,就拖拉下来没有写了。

有些事情觉得写在博客上也不是很合适,有些又觉得没必要写,有时候又会有种逆反情绪:为什么要写呢?其实要写只是因为想要写一些什么而已。这是一种记录的方式,记得有一天闲着无聊翻看着以前一篇又一篇的博文的时候,的确是觉得有些东西能记录一下好让我现在还能顺着线头想起来,真是一件不错的事情。

我以前也有过“要定期的写点文章”这样的计划和念头,也实施过一整子,但是又因为种种原因搁置下来了。很多事情也是这样,我甚至有些怀疑自己是不是三分钟热度,没有坚持不懈的毅力。

经过一番思考的结论是,毅力是一方面,但是我认为更严重的问题是对这一件事有了一些“罪恶感”。而这个罪恶感导致我对于这件事情采取了消极逃避的姿态。其实,仔细想想有什么地方是需要罪恶感的呢?这就象老朋友很长时间没有联系了,而有时候又找不到去联系的理由,于是就一直不联系了。而在我的观念里面,老朋友中的好朋友,就是不管多长时间没有说话了,或者连共同话题都没了,聊起天来也应该不会尴尬的吧。

不知道大家会不会也同样有这种感觉。我想呢,也用不着去刻意追求“有固定写作频率”这种东西,只要顺其自然,也许慢慢就会有的吧;有的话最好,不过有没有也无所谓了。毕竟,我也不是把blog作为一个什么产品去做的。

另外小透露一下~最近有整体更新一下blog的想法,也许过几天就会有有一些比较大的改变哦~呵呵。

Sql Server中的日期与时间函数

最近需要使用数据库的很多关于时间的函数,整理一下放在这里备忘~

数据库能完成的,就不要再写多写程序完成啦~

Sql Server中的日期与时间函数
1.   当前系统日期、时间
select getdate()

2. dateadd   在向指定日期加上一段时间的基础上,返回新的 datetime 值
例如:向日期加上2天
select dateadd(day,2,’2004-10-15′)   –返回:2004-10-17 00:00:00.000

3. datediff 返回跨两个指定日期的日期和时间边界数。
select datediff(day,’2004-09-01′,’2004-09-18′)    –返回:17

4. datepart 返回代表指定日期的指定日期部分的整数。
SELECT DATEPART(month, ’2004-10-15′)   –返回 10

5. datename 返回代表指定日期的指定日期部分的字符串
SELECT datename(weekday, ’2004-10-15′)   –返回:星期五

6. day(), month(),year() –可以与datepart对照一下

select 当前日期=convert(varchar(10),getdate(),120)
,当前时间=convert(varchar(8),getdate(),114)

select datename(dw,’2004-10-15′)

select 本年第多少周=datename(week,’2004-10-15′)
,今天是周几=datename(weekday,’2004-10-15′)

函数 参数/功能
GetDate( ) 返回系统目前的日期与时间
DateDiff (interval,date1,date2) 以interval 指定的方式,返回date2 与date1两个日期之间的差值 date2-date1
DateAdd (interval,number,date) 以interval指定的方式,加上number之后的日期
DatePart (interval,date) 返回日期date中,interval指定部分所对应的整数值
DateName (interval,date) 返回日期date中,interval指定部分所对应的字符串名称

参数 interval的设定值如下:

值 缩 写(Sql Server) (Access 和 ASP) 说明
Year Yy yyyy 年 1753 ~ 9999
Quarter Qq q   季 1 ~ 4
Month Mm m   月1 ~ 12
Day of year Dy y 一年的日数,一年中的第几日 1-366
Day Dd d   日,1-31
Weekday Dw w 一周的日数,一周中的第几日 1-7
Week Wk ww 周,一年中的第几周 0 ~ 51
Hour Hh h   时0 ~ 23
Minute Mi n 分钟0 ~ 59
Second Ss s 秒 0 ~ 59
Millisecond Ms – 毫秒 0 ~ 999
access 和 asp 中用date()和now()取得系统日期时间;其中DateDiff,DateAdd,DatePart也同是能用于Access和asp中,这些函数的用法也类似

举例:
1.GetDate() 用于sql server :select GetDate()

2.DateDiff(‘s’,’2005-07-20′,’2005-7-25 22:56:32′)返回值为 514592 秒
DateDiff(‘d’,’2005-07-20′,’2005-7-25 22:56:32′)返回值为 5 天

3.DatePart(‘w’,’2005-7-25 22:56:32′)返回值为 2 即星期一(周日为1,周六为7)
DatePart(‘d’,’2005-7-25 22:56:32′)返回值为 25即25号
DatePart(‘y’,’2005-7-25 22:56:32′)返回值为 206即这一年中第206天
DatePart(‘yyyy’,’2005-7-25 22:56:32′)返回值为 2005即2005年
SELECT CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 1): 05/16/06
SELECT CONVERT(varchar(100), GETDATE(), 2): 06.05.16
SELECT CONVERT(varchar(100), GETDATE(), 3): 16/05/06
SELECT CONVERT(varchar(100), GETDATE(), 4): 16.05.06
SELECT CONVERT(varchar(100), GETDATE(), 5): 16-05-06
SELECT CONVERT(varchar(100), GETDATE(), 6): 16 05 06
SELECT CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
SELECT CONVERT(varchar(100), GETDATE(), 8): 10:57:46
SELECT CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
SELECT CONVERT(varchar(100), GETDATE(), 10): 05-16-06
SELECT CONVERT(varchar(100), GETDATE(), 11): 06/05/16
SELECT CONVERT(varchar(100), GETDATE(), 12): 060516
SELECT CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937
SELECT CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
SELECT CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47
SELECT CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157
SELECT CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM
SELECT CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
SELECT CONVERT(varchar(100), GETDATE(), 24): 10:57:47
SELECT CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250
SELECT CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 101): 05/16/2006
SELECT CONVERT(varchar(100), GETDATE(), 102): 2006.05.16
SELECT CONVERT(varchar(100), GETDATE(), 103): 16/05/2006
SELECT CONVERT(varchar(100), GETDATE(), 104): 16.05.2006
SELECT CONVERT(varchar(100), GETDATE(), 105): 16-05-2006
SELECT CONVERT(varchar(100), GETDATE(), 106): 16 05 2006
SELECT CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006
SELECT CONVERT(varchar(100), GETDATE(), 108): 10:57:49
SELECT CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM
SELECT CONVERT(varchar(100), GETDATE(), 110): 05-16-2006
SELECT CONVERT(varchar(100), GETDATE(), 111): 2006/05/16
SELECT CONVERT(varchar(100), GETDATE(), 112): 20060516
SELECT CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513
SELECT CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547
SELECT CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49
SELECT CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700
SELECT CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
SELECT CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM
SELECT CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM

对时间进行group by

select CONVERT(varchar(100), register_date()(注:表的一个属性名), 112)

from 表名

where 条件

group by CONVERT(varchar(100), register_date(),112)