grapeCG/Crypt/ConstData.go
2017-07-26 22:22:39 +08:00

350 lines
7.5 KiB
Go

// CrossGate静态数据
// version 1.0 beta
// by koangel
// email: jackliu100@gmail.com
// 2017/7/26
package CGCrypt
var base64_reversecharset = []byte{
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 62, 0, 63, 0, 0,
52, 53, 54, 55, 56, 57, 58, 59,
60, 61, 0, 0, 0, 0, 0, 0,
0, 0, 1, 2, 3, 4, 5, 6,
7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22,
23, 24, 25, 0, 0, 0, 0, 0,
0, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 45, 46, 47, 48,
49, 50, 51, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
}
var base64_charset = []byte{
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H',
'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P',
'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X',
'Y', 'Z', 'a', 'b', 'c', 'd', 'e', 'f',
'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n',
'o', 'p', 'q', 'r', 's', 't', 'u', 'v',
'w', 'x', 'y', 'z', '0', '1', '2', '3',
'4', '5', '6', '7', '8', '9', '+', '-',
}
const (
B00000000 = 0
B00000001 = 1
B00000010 = 2
B00000011 = 3
B00000100 = 4
B00000101 = 5
B00000110 = 6
B00000111 = 7
B00001000 = 8
B00001001 = 9
B00001010 = 10
B00001011 = 11
B00001100 = 12
B00001101 = 13
B00001110 = 14
B00001111 = 15
B00010000 = 16
B00010001 = 17
B00010010 = 18
B00010011 = 19
B00010100 = 20
B00010101 = 21
B00010110 = 22
B00010111 = 23
B00011000 = 24
B00011001 = 25
B00011010 = 26
B00011011 = 27
B00011100 = 28
B00011101 = 29
B00011110 = 30
B00011111 = 31
B00100000 = 32
B00100001 = 33
B00100010 = 34
B00100011 = 35
B00100100 = 36
B00100101 = 37
B00100110 = 38
B00100111 = 39
B00101000 = 40
B00101001 = 41
B00101010 = 42
B00101011 = 43
B00101100 = 44
B00101101 = 45
B00101110 = 46
B00101111 = 47
B00110000 = 48
B00110001 = 49
B00110010 = 50
B00110011 = 51
B00110100 = 52
B00110101 = 53
B00110110 = 54
B00110111 = 55
B00111000 = 56
B00111001 = 57
B00111010 = 58
B00111011 = 59
B00111100 = 60
B00111101 = 61
B00111110 = 62
B00111111 = 63
B01000000 = 64
B01000001 = 65
B01000010 = 66
B01000011 = 67
B01000100 = 68
B01000101 = 69
B01000110 = 70
B01000111 = 71
B01001000 = 72
B01001001 = 73
B01001010 = 74
B01001011 = 75
B01001100 = 76
B01001101 = 77
B01001110 = 78
B01001111 = 79
B01010000 = 80
B01010001 = 81
B01010010 = 82
B01010011 = 83
B01010100 = 84
B01010101 = 85
B01010110 = 86
B01010111 = 87
B01011000 = 88
B01011001 = 89
B01011010 = 90
B01011011 = 91
B01011100 = 92
B01011101 = 93
B01011110 = 94
B01011111 = 95
B01100000 = 96
B01100001 = 97
B01100010 = 98
B01100011 = 99
B01100100 = 100
B01100101 = 101
B01100110 = 102
B01100111 = 103
B01101000 = 104
B01101001 = 105
B01101010 = 106
B01101011 = 107
B01101100 = 108
B01101101 = 109
B01101110 = 110
B01101111 = 111
B01110000 = 112
B01110001 = 113
B01110010 = 114
B01110011 = 115
B01110100 = 116
B01110101 = 117
B01110110 = 118
B01110111 = 119
B01111000 = 120
B01111001 = 121
B01111010 = 122
B01111011 = 123
B01111100 = 124
B01111101 = 125
B01111110 = 126
B01111111 = 127
B10000000 = 128
B10000001 = 129
B10000010 = 130
B10000011 = 131
B10000100 = 132
B10000101 = 133
B10000110 = 134
B10000111 = 135
B10001000 = 136
B10001001 = 137
B10001010 = 138
B10001011 = 139
B10001100 = 140
B10001101 = 141
B10001110 = 142
B10001111 = 143
B10010000 = 144
B10010001 = 145
B10010010 = 146
B10010011 = 147
B10010100 = 148
B10010101 = 149
B10010110 = 150
B10010111 = 151
B10011000 = 152
B10011001 = 153
B10011010 = 154
B10011011 = 155
B10011100 = 156
B10011101 = 157
B10011110 = 158
B10011111 = 159
B10100000 = 160
B10100001 = 161
B10100010 = 162
B10100011 = 163
B10100100 = 164
B10100101 = 165
B10100110 = 166
B10100111 = 167
B10101000 = 168
B10101001 = 169
B10101010 = 170
B10101011 = 171
B10101100 = 172
B10101101 = 173
B10101110 = 174
B10101111 = 175
B10110000 = 176
B10110001 = 177
B10110010 = 178
B10110011 = 179
B10110100 = 180
B10110101 = 181
B10110110 = 182
B10110111 = 183
B10111000 = 184
B10111001 = 185
B10111010 = 186
B10111011 = 187
B10111100 = 188
B10111101 = 189
B10111110 = 190
B10111111 = 191
B11000000 = 192
B11000001 = 193
B11000010 = 194
B11000011 = 195
B11000100 = 196
B11000101 = 197
B11000110 = 198
B11000111 = 199
B11001000 = 200
B11001001 = 201
B11001010 = 202
B11001011 = 203
B11001100 = 204
B11001101 = 205
B11001110 = 206
B11001111 = 207
B11010000 = 208
B11010001 = 209
B11010010 = 210
B11010011 = 211
B11010100 = 212
B11010101 = 213
B11010110 = 214
B11010111 = 215
B11011000 = 216
B11011001 = 217
B11011010 = 218
B11011011 = 219
B11011100 = 220
B11011101 = 221
B11011110 = 222
B11011111 = 223
B11100000 = 224
B11100001 = 225
B11100010 = 226
B11100011 = 227
B11100100 = 228
B11100101 = 229
B11100110 = 230
B11100111 = 231
B11101000 = 232
B11101001 = 233
B11101010 = 234
B11101011 = 235
B11101100 = 236
B11101101 = 237
B11101110 = 238
B11101111 = 239
B11110000 = 240
B11110001 = 241
B11110010 = 242
B11110011 = 243
B11110100 = 244
B11110101 = 245
B11110110 = 246
B11110111 = 247
B11111000 = 248
B11111001 = 249
B11111010 = 250
B11111011 = 251
B11111100 = 252
B11111101 = 253
B11111110 = 254
B11111111 = 255
)
/* masks for first byte ( write )*/
var saacproto_modifymask_first = [8][9]int{
{0, B00000001, B00000011, B00000111, B00001111, B00011111, B00111111, B01111111, B11111111}, /* mod 0*/
{0, B00000011, B00000111, B00001111, B00011111, B00111111, B01111111, B11111111, B11111111}, /* mod 1*/
{0, B00000111, B00001111, B00011111, B00111111, B01111111, B11111111, B11111111, B11111111}, /* mod 2*/
{0, B00001111, B00011111, B00111111, B01111111, B11111111, B11111111, B11111111, B11111111}, /* mod 3*/
{0, B00011111, B00111111, B01111111, B11111111, B11111111, B11111111, B11111111, B11111111}, /* mod 4*/
{0, B00111111, B01111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111}, /* mod 5*/
{0, B01111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111}, /* mod 6*/
{0, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111, B11111111}, /* mod 7*/
}
/* masks for second byte ( write ) */
var saacproto_modifymask_second = [8][9]int{
{0, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000}, /* mod 0 */
{0, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000001}, /* mod 1 */
{0, B00000000, B00000000, B00000000, B00000000, B00000000, B00000000, B00000001, B00000011}, /* mod 2 */
{0, B00000000, B00000000, B00000000, B00000000, B00000000, B00000001, B00000011, B00000111}, /* mod 3 */
{0, B00000000, B00000000, B00000000, B00000000, B00000001, B00000011, B00000111, B00001111}, /* mod 4 */
{0, B00000000, B00000000, B00000000, B00000001, B00000011, B00000111, B00001111, B00011111}, /* mod 5 */
{0, B00000000, B00000000, B00000001, B00000011, B00000111, B00001111, B00011111, B00111111}, /* mod 6 */
{0, B00000000, B00000001, B00000011, B00000111, B00001111, B00011111, B00111111, B01111111}, /* mod 7 */
}
const (
CHAR_SIZE = 256
NODE_SIZE = 512
JCODE_KEY = 4595
BITS_LEN = 9 /* 9 bit lzw compression */
)
type NODE struct {
chr byte
parent int
brother int
child int
}