rijndael.cpp
来自「提供加密的c/s 聊天程序。用到对称加密算法和非对称加密算法」· C++ 代码 · 共 1,439 行 · 第 1/5 页
CPP
1,439 行
1321699145, -775825096, -1560376118, 188127444,
-2117097739, -567761542, -1910056265, -1079754835,
-1645990854, -1844621192, -862229921, 1180849278,
331544205, -1192718120, -144822727, -1342864701,
-2134991011, -1820562992, 766078933, 313773861,
-1724135252, 2108100632, 1668212892, -1149510853,
2013908262, 418672217, -1224610662, -1700232369,
1852171925, -427906305, -821550660, -387518699,
-1680229657, 919489135, 164948639, 2094410160,
-1297141340, 590424639, -1808742747, 1723872674,
-1137216434, -895026046, -793714544, -669699161,
-1739919100, -621329940, 1343127501, -164685935,
-695372211, -1337113617, 1297403050, 81781910,
-1243373871, -2011476886, 532201772, 1367295589,
-368796322, 895287692, 1953757831, 1093597963,
492483431, -766340389, 1446242576, 1192455638,
1636604631, 209336225, 344873464, 1015671571,
669961897, -919226527, -437395172, -1321436601,
-547775278, 1933530610, -830924780, 935293895,
-840281097, -1436852227, 1863638845, -611944380,
-209597777, -1002522264, 875313188, 1080017571,
-1015933411, 621591778, 1233856572, -1790836979,
24197544, -1277294580, -459482956, -1047501738,
-2073986101, -1234119374, 1551124588, 1463996600
};
const int CRijndael::sm_T8[256] =
{
-190361519, 1097159550, 396673818, 660510266,
-1418998981, -1656360673, -94852180, -486304949,
821712160, 1986918061, -864644728, 38544885,
-438830001, 718002117, 893681702, 1654886325,
-1319482914, -1172609243, -368142267, -20913827,
796197571, 1290801793, 1184342925, -738605461,
-1889540349, -1835231979, 1836772287, 1381620373,
-1098699308, 1948373848, -529979063, -909622130,
-1031181707, -1904641804, 1480485785, -1183720153,
-514869570, -2001922064, 548169417, -835013507,
-548792221, 439452389, 1362321559, 1400849762,
1685577905, 1806599355, -2120213250, 137073913,
1214797936, 1174215055, -563312748, 2079897426,
1943217067, 1258480242, 529487843, 1437280870,
-349698126, -1245576401, -981755258, 923313619,
679998000, -1079659997, 57326082, 377642221,
-820237430, 2041877159, 133361907, 1776460110,
-621490843, 96392454, 878845905, -1493267772,
777231668, -212492126, -1964953083, -152341084,
-2081670901, 1626319424, 1906247262, 1846563261,
562755902, -586793578, 1040559837, -423803315,
1418573201, -1000536719, 114585348, 1343618912,
-1728371687, -1108764714, 1078185097, -643926169,
-398279248, -1987344377, 425408743, -923870343,
2081048481, 1108339068, -2078357000, 0,
-2138668279, 736970802, 292596766, 1517440620,
251657213, -2059905521, -1361764803, 758720310,
265905162, 1554391400, 1532285339, 908999204,
174567692, 1474760595, -292105548, -1684955621,
-1060810880, -601841055, 2001430874, 303699484,
-1816524062, -1607801408, 585122620, 454499602,
151849742, -1949848078, -1230456531, 514443284,
-249985705, 1963412655, -1713521682, 2137062819,
19308535, 1928707164, 1715193156, -75615141,
1126790795, 600235211, -302225226, -453942344,
836553431, 1669664834, -1759363053, -971956092,
1243905413, -1153566510, -114159186, 698445255,
-1641067747, -1305414692, -2041385971, -1042034569,
-1290376149, 1891211689, -1807156719, -379313593,
-57883480, -264299872, 2100090966, 865136418,
1229899655, 953270745, -895287668, -737462632,
-176042074, 2061379749, -1215420710, -1379949505,
983426092, 2022837584, 1607244650, 2118541908,
-1928084746, -658970480, 972512814, -1011878526,
1568718495, -795640727, -718427793, 621982671,
-1399243832, 410887952, -1671205144, 1002142683,
645401037, 1494807662, -1699282452, 1335535747,
-1787927066, -1671510, -1127282655, 367585007,
-409216582, 1865862730, -1626745622, -1333995991,
-1531793615, 1059270954, -1517014842, -1570324427,
1320957812, -2100648196, -1865371424, -1479011021,
77089521, -321194175, -850391425, -1846137065,
1305906550, -273658557, -1437772596, -1778065436,
-776608866, 1787304780, 740276417, 1699839814,
1592394909, -1942659839, -2022411270, 188821243,
1729977011, -606973294, 274084841, -699985043,
-681472870, -1593017801, -132870567, 322734571,
-1457000754, 1640576439, 484830689, 1202797690,
-757114468, -227328171, 349075736, -952647821,
-137500077, -39167137, 1030690015, 1155237496,
-1342996022, 1757691577, 607398968, -1556062270,
499347990, -500888388, 1011452712, 227885567,
-1476300487, 213114376, -1260086056, 1455525988,
-880516741, 850817237, 1817998408, -1202240816
};
const int CRijndael::sm_U1[256] =
{
0, 235474187, 470948374, 303765277,
941896748, 908933415, 607530554, 708780849,
1883793496, 2118214995, 1817866830, 1649639237,
1215061108, 1181045119, 1417561698, 1517767529,
-527380304, -291906117, -58537306, -225720403,
-659233636, -692196969, -995688822, -894438527,
-1864845080, -1630423581, -1932877058, -2101104651,
-1459843900, -1493859889, -1259432238, -1159226407,
-616842373, -718096784, -953573011, -920605594,
-484470953, -317291940, -15887039, -251357110,
-1418472669, -1518674392, -1218328267, -1184316354,
-1822955761, -1654724092, -1891238631, -2125664238,
1001089995, 899835584, 666464733, 699432150,
59727847, 226906860, 530400753, 294930682,
1273168787, 1172967064, 1475418501, 1509430414,
1942435775, 2110667444, 1876241833, 1641816226,
-1384747530, -1551933187, -1318815776, -1083344149,
-1789765158, -1688513327, -1992277044, -2025238841,
-583137874, -751368027, -1054072904, -819653965,
-451268222, -351060855, -116905068, -150919521,
1306967366, 1139781709, 1374988112, 1610459739,
1975683434, 2076935265, 1775276924, 1742315127,
1034867998, 866637845, 566021896, 800440835,
92987698, 193195065, 429456164, 395441711,
1984812685, 2017778566, 1784663195, 1683407248,
1315562145, 1080094634, 1383856311, 1551037884,
101039829, 135050206, 437757123, 337553864,
1042385657, 807962610, 573804783, 742039012,
-1763899843, -1730933962, -1966138325, -2067394272,
-1359400431, -1594867942, -1293211641, -1126030068,
-426414491, -392404114, -91786125, -191989384,
-558802359, -793225406, -1029488545, -861254316,
1106041591, 1340463100, 1576976609, 1408749034,
2043211483, 2009195472, 1708848333, 1809054150,
832877231, 1068351396, 766945465, 599762354,
159417987, 126454664, 361929877, 463180190,
-1585706425, -1351284916, -1116860335, -1285087910,
-1722270101, -1756286112, -2058738563, -1958532746,
-785096161, -549621996, -853116919, -1020300030,
-384805325, -417768648, -184398811, -83148498,
-1697160820, -1797362553, -2033878118, -1999866223,
-1561111136, -1392879445, -1092530250, -1326955843,
-358676012, -459930401, -158526526, -125559095,
-759480840, -592301837, -827774994, -1063245083,
2051518780, 1951317047, 1716890410, 1750902305,
1113818384, 1282050075, 1584504582, 1350078989,
168810852, 67556463, 371049330, 404016761,
841739592, 1008918595, 775550814, 540080725,
-325404927, -493635062, -259478249, -25059300,
-725712083, -625504730, -928212677, -962227152,
-1663901863, -1831087534, -2134850225, -1899378620,
-1527321739, -1426069890, -1192955549, -1225917336,
202008497, 33778362, 270040487, 504459436,
875451293, 975658646, 675039627, 641025152,
2084704233, 1917518562, 1615861247, 1851332852,
1147550661, 1248802510, 1484005843, 1451044056,
933301370, 967311729, 733156972, 632953703,
260388950, 25965917, 328671808, 496906059,
1206477858, 1239443753, 1543208500, 1441952575,
2144161806, 1908694277, 1675577880, 1842759443,
-684598070, -650587711, -886847780, -987051049,
-283776794, -518199827, -217582864, -49348613,
-1485196142, -1452230247, -1150570876, -1251826801,
-1621262146, -1856729675, -2091935064, -1924753501
};
const int CRijndael::sm_U2[256] =
{
0, 185469197, 370938394, 487725847,
741876788, 657861945, 975451694, 824852259,
1483753576, 1400783205, 1315723890, 1164071807,
1950903388, 2135319889, 1649704518, 1767536459,
-1327460144, -1141990947, -1493400886, -1376613433,
-1663519516, -1747534359, -1966823682, -2117423117,
-393160520, -476130891, -24327518, -175979601,
-995558260, -811141759, -759894378, -642062437,
2077965243, 1893020342, 1841768865, 1724457132,
1474502543, 1559041666, 1107234197, 1257309336,
598438867, 681933534, 901210569, 1052338372,
261314535, 77422314, 428819965, 310463728,
-885281941, -1070226842, -584599183, -701910916,
-419197089, -334657966, -249586363, -99511224,
-1823743229, -1740248562, -2057834215, -1906706412,
-1082931401, -1266823622, -1452288723, -1570644960,
-156404115, -39616672, -525245321, -339776134,
-627748263, -778347692, -863420349, -947435186,
-1361232379, -1512884472, -1195299809, -1278270190,
-2098914767, -1981082820, -1795618773, -1611202266,
1179510461, 1296297904, 1347548327, 1533017514,
1786102409, 1635502980, 2087309459, 2003294622,
507358933, 355706840, 136428751, 53458370,
839224033, 957055980, 605657339, 790073846,
-1921626666, -2038938405, -1687527476, -1872472383,
-1588696606, -1438621457, -1219331080, -1134791947,
-721025602, -569897805, -1021700188, -938205527,
-113368694, -231724921, -282971248, -466863459,
1033297158, 915985419, 730517276, 545572369,
296679730, 446754879, 129166120, 213705253,
1709610350, 1860738147, 1945798516, 2029293177,
1239331162, 1120974935, 1606591296, 1422699085,
-146674470, -61872681, -513933632, -363595827,
-612775698, -797457949, -848962828, -966011911,
-1355701070, -1539330625, -1188186456, -1306280027,
-2096529274, -2012771957, -1793748324, -1642357871,
1201765386, 1286567175, 1371368976, 1521706781,
1805211710, 1620529459, 2105887268, 1988838185,
533804130, 350174575, 164439672, 46346101,
870912086, 954669403, 636813900, 788204353,
-1936009375, -2020286868, -1702443653, -1853305738,
-1599933611, -1414727080, -1229004465, -1112479678,
-722821367, -538667516, -1024029421, -906460130,
-120407235, -203640272, -288446169, -440360918,
1014646705, 930369212, 711349675, 560487590,
272786309, 457992840, 106852767, 223377554,
1678381017, 1862534868, 1914052035, 2031621326,
1211247597, 1128014560, 1580087799, 1428173050,
32283319, 182621114, 401639597, 486441376,
768917123, 651868046, 1003007129, 818324884,
1503449823, 1385356242, 1333838021, 1150208456,
1973745387, 2125135846, 1673061617, 1756818940,
-1324610969, -1174273174, -1492117379, -1407315600,
-1657524653, -1774573730, -1960297399, -2144979644,
-377732593, -495826174, -10465259, -194094824,
-985373125, -833982666, -749177823, -665420500,
2050466060, 1899603969, 1814803222, 1730525723,
1443857720, 1560382517, 1075025698, 1260232239,
575138148, 692707433, 878443390, 1062597235,
243256656, 91341917, 409198410, 325965383,
-891866660, -1042728751, -590666810, -674944309,
-420538904, -304014107, -252508174, -67301633,
-1834518092, -1716948807, -2068091986, -1883938141,
-1096852096, -1248766835, -1467789414, -1551022441,
};
const int CRijndael::sm_U3[256] =
{
0, 218828297, 437656594, 387781147,
875313188, 958871085, 775562294, 590424639,
1750626376, 1699970625, 1917742170, 2135253587,
1551124588, 1367295589, 1180849278, 1265195639,
-793714544, -574886247, -895026046, -944901493,
-459482956, -375925059, -24460122, -209597777,
-1192718120, -1243373871, -1560376118, -1342864701,
-1933268740, -2117097739, -1764576018, -1680229657,
-1149510853, -1234119374, -1586641111, -1402549984,
-1890065633, -2107839210, -1790836979, -1739919100,
-752637069, -567761542, -919226527, -1002522264,
-418409641, -368796322, -48656571, -267222708,
1808481195, 1723872674, 1910319033, 2094410160,
1608975247, 1391201670, 1173430173, 1224348052,
59984867, 244860394, 428169201, 344873464,
935293895, 984907214, 766078933, 547512796,
1844882806, 1627235199, 2011214180, 2062270317,
1507497298, 1423022939, 1137477952, 1321699145,
95345982, 145085239, 532201772, 313773861,
830661914, 1015671571, 731183368, 648017665,
-1119466010, -1337113617, -1487908364, -1436852227,
-1989511742, -2073986101, -1820562992, -1636341799,
-719438418, -669699161, -821550660, -1039978571,
-516815478, -331805821, -81520232, -164685935,
-695372211, -611944380, -862229921, -1047501738,
-492745111, -274055072, -122203525, -172204942,
-1093335547, -1277294580, -1530717673, -1446505442,
-1963377119, -2014171096, -1863376333, -1645990854,
104699613, 188127444, 472615631, 287343814,
840019705, 1058709744, 671593195, 621591778,
1852171925, 1668212892, 1953757831, 2037970062,
1514790577, 1463996600, 1080017571, 1297403050,
-621329940, -671330331, -1058972162, -840281097,
-287606328, -472877119, -187865638, -104436781,
-1297141340, -1079754835, -1464259146, -1515052097,
-2038232704, -1954019447, -1667951214, -1851909221,
172466556, 122466165, 273792366, 492483431,
1047239000, 861968209, 612205898, 695634755,
1646252340, 1863638845, 2013908262, 1963115311,
1446242576, 1530455833, 1277555970, 1093597963,
1636604631, 1820824798, 2073724613, 1989249228,
1436590835, 1487645946, 1337376481, 1119727848,
164948639, 81781910, 331544205, 516552836,
1039717051, 821288114, 669961897, 719700128,
-1321436601, -1137216434, -1423284651, -1507760036,
-2062531997, -2011476886, -1626972559, -1844621192,
-647755249, -730921978, -1015933411, -830924780,
-314035669, -532464606, -144822727, -95084496,
-1224610662, -1173691757, -1390940024, -1608712575,
-2094148418, -1910056265, -1724135252, -1808742747,
-547775278, -766340389, -984645440, -935031095,
-344611594, -427906305, -245122844, -60246291,
1739656202, 1790575107, 2108100632, 1890328081,
1402811438, 1586903591, 1233856572, 1149249077,
266959938, 48394827, 369057872, 418672217,
1002783846, 919489135, 567498868, 752375421,
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?