祭侄文稿

颜真卿(唐)

维乾元元年,岁次戊戌九月庚午朔三日壬辰,第十三(“从父”涂去)叔银青光禄(脱“大”字)夫使持节、蒲州诸军事、蒲州刺史、上轻车都尉、丹杨县开国侯真卿,以清酌庶羞,祭于亡侄赠赞善大夫季明之灵。惟尔挺生,夙标幼德,宗庙瑚琏,阶庭兰玉,(“方凭积善”涂去)每慰人心,方期戬谷,何图逆贼闲衅,称兵犯顺,尔父竭诚,(“□制”涂去,改“被胁”再涂去)常山作郡。余时受命,亦在平原。仁兄爱我,(“恐”涂去)俾尔传言,尔既归止,爰开门。土门既开,凶威大蹙(“贼臣拥众不救”涂去)。贼臣不(“拥”涂去)救,孤城围逼,父(“擒”涂去)陷子死,巢倾卵覆。天不悔祸,谁为荼毒。念尔遘残,百身何赎。呜呼哀哉。吾承天泽,移牧河关。(“河东近”涂去)泉明比者,再陷常山,(“提”涂去)携尔首榇,及兹同还。(“亦自常山”涂去)抚念摧切,震悼心颜,方俟远日,(涂去二字不辨)卜(再涂一字亦不辨)尔(“尔之”涂去)幽宅(“相”涂去)魂而有知无嗟久客。

呜呼哀哉。尚飨。

祭十二郎文

韩愈(唐)

  年、月、日,季父愈闻汝丧之七日,乃能衔哀致诚,使建中远具时羞之奠,告汝十二郎之灵:

  呜呼!吾少孤,及长,不省所怙,惟兄嫂是依。中年兄殁南方,吾与汝俱幼,从嫂归葬河阳。既又与汝就食江南,零丁孤苦,未尝一日相离也。吾上有三兄,皆不幸早世。承先人后者,在孙惟汝,在子惟吾。两世一身,形单影只。嫂尝抚汝指吾而言曰:“韩氏两世,惟此而已!”汝时尤小,当不复记忆;吾时虽能记忆,亦未知其言之悲也。

  吾年十九,始来京城。其后四年,而归视汝。又四年,吾往河阳省坟墓,遇汝从嫂丧来葬。又二年,吾佐董丞相于汴州,汝来省吾,止一岁,请归取其孥。明年,丞相薨,吾去汴州,汝不果来。是年,吾佐戎徐州,使取汝者始行,吾又罢去,汝又不果来。吾念汝从于东,东亦客也,不可以久;图久远者,莫如西归,将成家而致汝。呜呼!孰谓汝遽去吾而殁乎!吾与汝俱少年,以为虽暂相别,终当久相与处。故舍汝而旅食京师,以求斗斛之禄。诚知其如此,虽万乘之公相,吾不以一日辍汝而就也。

  去年,孟东野往,吾书与汝曰:“吾年未四十,而视茫茫,而发苍苍,而齿牙动摇。念诸父与诸兄,皆康强而早世,如吾之衰者,其能久存乎?吾不可去,汝不肯来,恐旦暮死,而汝抱无涯之戚也。”孰谓少者殁而长者存,强者夭而病者全乎?

  呜呼!其信然邪?其梦邪?其传之非其真邪?信也,吾兄之盛德而夭其嗣乎?汝之纯明而不克蒙其泽乎?少者强者而夭殁,长者衰者而存全乎?未可以为信也!梦也,传之非其真也,东野之书,耿兰之报,何为而在吾侧也?呜呼!其信然矣!吾兄之盛德而夭其嗣矣,汝之纯明宜业其家者,不克蒙其泽矣。所谓天者诚难测,而神者诚难明矣。所谓理者不可推,而寿者不可知矣。

  虽然,吾自今年来,苍苍者或化而为白矣;动摇者或脱而落矣,毛血日益衰,志气日益微,几何不从汝而死也?死而有知,其几何离?其无知,悲不几时,而不悲者无穷期矣。

  汝之子始十岁,吾之子始五岁,少而强者不可保,如此孩提者,又可冀其成立邪?呜呼哀哉!呜呼哀哉!

  汝去年书云:“比得软脚病,往往而剧。”吾曰:“是疾也,江南之人,常常有之。”未始以为忧也。呜呼, 其竟以此而殒其生乎?抑别有疾而至斯极乎?

  汝之书,六月十七日也;东野云,汝殁以六月二日;耿兰之报无月日。盖东野之使者不知问家人以月日,如耿兰之报,不知当言月日。东野与吾书,乃问使者,使者妄称以应之乎。其然乎?其不然乎?

  今吾使建中祭汝,吊汝之孤与汝之乳母。彼有食可守,以待终丧,则待终丧而取以来;如不能守以终丧,则遂取以来。其余奴婢,并令守汝丧。吾力能改葬,终葬汝于先人之兆,然后惟其所愿。

  呜呼!汝病吾不知时,汝殁吾不知日,生不能相养以共居,殁不能抚汝以尽哀,敛不凭其棺,窆不临其穴。吾行负神明,而使汝夭。不孝不慈,而不得与汝相养以生,相守以死。一在天之涯,一在地之角,生而影不与吾形相依,死而魂不与吾梦相接,吾实为之,其又何尤!彼苍者天,曷其有极!自今已往,吾其无意于人世矣!当求数顷之田于伊、颍之上,以待余年。教吾子与汝子,幸其成;长吾女与汝女,待其嫁,如此而已。

  呜呼,言有穷而情不可终,汝其知也邪?其不知也邪?呜呼哀哉!尚飨!

陈情表

李密(西晋)

  臣密言:臣以险衅,夙遭闵凶。生孩六月,慈父见背;行年四岁,舅夺母志。祖母刘愍臣孤弱,躬亲抚养。臣少多疾病,九岁不行,零丁孤苦,至于成立。既无伯叔,终鲜兄弟,门衰祚薄,晚有儿息。外无期功强近之亲,内无应门五尺之僮,茕茕孑立,形影相吊。而刘夙婴疾病,常在床蓐,臣侍汤药,未曾废离。(悯 一作:愍;孑立 一作:独立)

  逮奉圣朝,沐浴清化。前太守臣逵察臣孝廉;后刺史臣荣举臣秀才。臣以供养无主,辞不赴命。诏书特下,拜臣郎中,寻蒙国恩,除臣洗马。猥以微贱,当侍东宫,非臣陨首所能上报。臣具以表闻,辞不就职。诏书切峻,责臣逋慢;郡县逼迫,催臣上道;州司临门,急于星火。臣欲奉诏奔驰,则刘病日笃,欲苟顺私情,则告诉不许。臣之进退,实为狼狈。

  伏惟圣朝以孝治天下,凡在故老,犹蒙矜育,况臣孤苦,特为尤甚。且臣少仕伪朝,历职郎署,本图宦达,不矜名节。今臣亡国贱俘,至微至陋,过蒙拔擢,宠命优渥,岂敢盘桓,有所希冀!但以刘日薄西山,气息奄奄,人命危浅,朝不虑夕。臣无祖母,无以至今日,祖母无臣,无以终余年。母孙二人,更相为命,是以区区不能废远。

  臣密今年四十有四,祖母今年九十有六,是臣尽节于陛下之日长,报养刘之日短也。乌鸟私情,愿乞终养。臣之辛苦,非独蜀之人士及二州牧伯所见明知,皇天后土实所共鉴。愿陛下矜悯愚诚,听臣微志,庶刘侥幸,保卒余年。臣生当陨首,死当结草。臣不胜犬马怖惧之情,谨拜表以闻。

文件的 Hash 算法

‘计算 MD2、MD3、MD4、MD5、SHA1 等散列值。

Option Explicit
Private Declare Function CryptAcquireContext Lib “advapi32.dll” Alias “CryptAcquireContextA” (ByRef phProv As Long, ByVal pszContainer As String, ByVal pszProvider As String, ByVal dwProvType As Long, ByVal dwFlags As Long) As Long
Private Declare Function CryptReleaseContext Lib “advapi32.dll” (ByVal hProv As Long, ByVal dwFlags As Long) As Long
Private Declare Function CryptCreateHash Lib “advapi32.dll” (ByVal hProv As Long, ByVal Algid As Long, ByVal hKey As Long, ByVal dwFlags As Long, ByRef phHash As Long) As Long
Private Declare Function CryptDestroyHash Lib “advapi32.dll” (ByVal hHash As Long) As Long
Private Declare Function CryptHashData Lib “advapi32.dll” (ByVal hHash As Long, pbData As Any, ByVal dwDataLen As Long, ByVal dwFlags As Long) As Long
Private Declare Function CryptGetHashParam Lib “advapi32.dll” (ByVal hHash As Long, ByVal dwParam As Long, pbData As Any, pdwDataLen As Long, ByVal dwFlags As Long) As Long
Private Const PROV_RSA_FULL = 1
Private Const CRYPT_NEWKEYSET = &H8
Private Const ALG_CLASS_HASH = 32768
Private Const ALG_TYPE_ANY = 0
Private Const ALG_SID_MD2 = 1
Private Const ALG_SID_MD4 = 2
Private Const ALG_SID_MD5 = 3
Private Const ALG_SID_SHA1 = 4
Enum HashAlgorithm
MD2 = ALG_CLASS_HASH Or ALG_TYPE_ANY Or ALG_SID_MD2
MD4 = ALG_CLASS_HASH Or ALG_TYPE_ANY Or ALG_SID_MD4
MD5 = ALG_CLASS_HASH Or ALG_TYPE_ANY Or ALG_SID_MD5
SHA1 = ALG_CLASS_HASH Or ALG_TYPE_ANY Or ALG_SID_SHA1
End Enum
Private Const HP_HASHVAL = 2
Private Const HP_HASHSIZE = 4

Function HashFile(ByVal FileName As String, Optional ByVal Algorithm As HashAlgorithm = MD5) As String
Dim hCtx As Long
Dim hHash As Long
Dim lFile As Long
Dim lRes As Long
Dim lLen As Long
Dim lIdx As Long
Dim abHash() As Byte
If Len(Dir$(FileName)) = 0 Then Err.Raise 53
lRes = CryptAcquireContext(hCtx, vbNullString, vbNullString, PROV_RSA_FULL, 0)
If lRes = 0 And Err.LastDllError = &H80090016 Then
lRes = CryptAcquireContext(hCtx, vbNullString, vbNullString, PROV_RSA_FULL, CRYPT_NEWKEYSET)
End If
If lRes <> 0 Then
lRes = CryptCreateHash(hCtx, Algorithm, 0, 0, hHash)
If lRes <> 0 Then
lFile = FreeFile
Open FileName For Binary As lFile
If Err.Number = 0 Then
Const BLOCK_SIZE As Long = 32 * 1024& ‘ 32K
ReDim abBlock(1 To BLOCK_SIZE) As Byte
Dim lCount As Long
Dim lBlocks As Long
Dim lLastBlock As Long
lBlocks = LOF(lFile) \ BLOCK_SIZE
lLastBlock = LOF(lFile) – lBlocks * BLOCK_SIZE
For lCount = 1 To lBlocks
Get lFile, , abBlock
lRes = CryptHashData(hHash, abBlock(1), BLOCK_SIZE, 0)
If lRes = 0 Then Exit For
Next
If lLastBlock > 0 And lRes <> 0 Then
ReDim abBlock(1 To lLastBlock) As Byte
Get lFile, , abBlock
lRes = CryptHashData(hHash, abBlock(1), lLastBlock, 0)
End If
Close lFile
End If
If lRes <> 0 Then
lRes = CryptGetHashParam(hHash, HP_HASHSIZE, lLen, 4, 0)
If lRes <> 0 Then
ReDim abHash(0 To lLen – 1)
lRes = CryptGetHashParam(hHash, HP_HASHVAL, abHash(0), lLen, 0)
If lRes <> 0 Then
For lIdx = 0 To UBound(abHash)
HashFile = HashFile & _
Right$(“0” & Hex$(abHash(lIdx)), 2)
Next
End If
End If
End If
CryptDestroyHash hHash
End If
End If
CryptReleaseContext hCtx, 0
If lRes = 0 Then Err.Raise Err.LastDllError
End Function

既涉嫌“买棋”又涉嫌“卖棋” “中国象棋第一人”王天一被批准逮捕

经济观察网 记者 李微敖 2024年8月1日至23日,多位知情者向经济观察网记者确认,有“中国象棋第一人”之称的象棋特级大师王天一,已被杭州检方批准逮捕。除王天一之外,还有其他中国象棋特级大师,亦被调查。

上述知情者亦介绍,王天一所涉及的事项,既涉嫌在比赛中“买棋”,即自己或者通过另一位中国象棋特级大师王跃飞给予对手好处,以赢得比赛,获取象棋等级分排名优势;还涉嫌“卖棋”,即收受对手钱财,在比赛中故意输棋。其中,王天一和王跃飞涉嫌“买棋”的金额,累计超过了80万元人民币。

王天一,1989年4月23日出生于北京,其从小就展现出象棋天赋。2008年,王天一被北京大学录取,就读于信息管理专业。2012年10月,王天一获得全国象棋个人赛冠军,成为中国第十六位男子全国象棋冠军棋手,并晋升为象棋特级大师。

从2014年开始,王天一连续十一年,居中国象棋棋手等级分全国第一名;其中2023年,他的等级分达到了2800分,为中国象棋施行等级分以来的历史新高,因此王天一也被誉为“中国象棋第一人”。

2018年3月,王天一正式加入中国棋院杭州分院。彼时,王天一公开称自己是“从合同工升级为正式工”。

中国棋院杭州分院是中国棋院在国内的唯一分院,由国家体育总局棋牌运动管理中心在2004年正式批复同意成立,拥有围棋、中国象棋、国际象棋三大棋类的专业队伍。

王天一的职业生涯,也不乏丑闻。

2012年9月,在河南省举行的第七届全国农民运动会上,王天一改名换姓为“王天弈”,假冒农民身份参赛,获得男子象棋快棋冠军。但事后被揭发,王天一公开道歉。

2023年4月前后,两位中国象棋特级大师王跃飞与郝继超的一段通话录音,在网络上开始传播。

这段录音中,两人提及王天一,并谈到王跃飞、王天一参与“买棋”,操纵象棋比赛之事,并疑似提到使用“特殊手段”在比赛中作弊。

这段录音迅速在中国象棋界及象棋爱好者中引起轩然大波,并被称为“录音门事件”。

同年10月17日,时年73岁的中国象棋特级大师,有“棋王”之誉的柳大华公开实名举报时任国家体育总局棋牌运动管理中心副主任郭莉萍。

柳大华在举报中称,“长期以来,她(即郭莉萍,记者注)包庇纵容中国象棋界的黑恶势力,公然使用电脑软件以及现代科技手段,操纵包办国内各种大型比赛的胜负与奖金分配,使得中国象棋这一中华民族文化瑰宝,沦落为一小撮棋界败类买卖胜负、受贿牟利的工具。”

柳大华还称,“长期以来,郭莉萍对中国象棋界的这一惊天丑闻,不查不问,反而对挺身揭露丑闻的运动员、教练员进行百般打压、打击报复。”

有知情者对经济观察网记者表示,“棋王”柳大华对郭莉萍的实名举报,使得“录音门事件”等中国象棋界存在的种种争议和乱象,更广为人知;同时,也引起了高层的关注,一定程度上推动了“录音门事件”的调查。

2024年6月,数位知情者向经济观察网记者证实,2024年4月23日,王天一接受警方调查,其办案单位包括杭州警方的经侦部门。而这一天,也恰恰是王天一的35岁生日。

彼时,王天一涉嫌的罪由包括“非国家工作人员受贿”。在2018年,王天一正式加入中国棋院杭州分院之前,他的身份是非国家工作人员。

2024年6月,经济观察网记者也联系到了柳大华实名举报的郭莉萍。她回复称,自己已调离国家体育总局棋牌运动管理中心,对于柳大华的指控,她不方便回应,需要等待组织的正式答复,“相信最后会有结论的”。

2024年8月1日至23日,数位知情者向经济观察网记者进一步确认,王天一已被杭州检方批准逮捕。除王天一之外,还有其他中国象棋特级大师,亦被调查。

王天一所涉及的事项,既涉嫌在比赛中“买棋”,即自己或者通过另一位中国象棋特级大师王跃飞给予对手好处,以赢得比赛,获取象棋等级分排名优势;还涉嫌“卖棋”,即收受对手钱财,在比赛中故意输棋。其中,王天一和王跃飞涉嫌“买棋”的金额,累计超过了80万元人民币。

另一位接近案情的知情人士则告诉经济观察网记者,王天一给予一位浙江籍中国象棋特级大师一场比赛的“让棋费”(好处费),达到20万元。该象棋特级大师前后三次被警方带走调查,其中第三次是在2024年7月初,此后他一直处于“失联”状况。

前述知情人士还介绍,公安机关在办理王天一案中,曾遇到比较多的干扰因素,后来此案“升格”,由上级公安部门督办。

经济观察网记者从2024年7月初至8月23日,多次拨打王天一、王跃飞,及上述浙江籍中国象棋特级大师的电话,始终未有人接听。