资源简介
此网站只可用于学习,是一个可以自己设置的投注网站,代码可以运行 ,只能做学习交流之用
代码片段和文件信息
#include
#include
#include
#define SCRAMBLE_LENGTH_323 8
typedef unsigned long ulong;
typedef unsigned int uint;
typedef unsigned char uchar;
struct rand_struct {
unsigned long seed1seed2max_value;
double max_value_dbl;
};
void hash_password(ulong *result const char *password uint password_len)
{
register ulong nr=1345345333L add=7 nr2=0x12345671L;
ulong tmp;
const char *password_end= password + password_len;
for (; password < password_end; password++)
{
if (*password == ‘ ‘ || *password == ‘\t‘)
continue; /* skip space in password */
tmp= (ulong) (uchar) *password;
nr^= (((nr & 63)+add)*tmp)+ (nr << 8);
nr2+=(nr2 << 8) ^ nr;
add+=tmp;
}
result[0]=nr & (((ulong) 1L << 31) -1L); /* Don‘t use sign bit (str2int) */;
result[1]=nr2 & (((ulong) 1L << 31) -1L);
}
void randominit(struct rand_struct *rand_st ulong seed1 ulong seed2)
{ /* For mysql 3.21.# */
#ifdef HAVE_purify
bzero((char*) rand_stsizeof(*rand_st)); /* Avoid UMC varnings */
#endif
rand_st->max_value= 0x3FFFFFFFL;
rand_st->max_value_dbl=(double) rand_st->max_value;
rand_st->seed1=seed1%rand_st->max_value ;
rand_st->seed2=seed2%rand_st->max_value;
}
double my_rnd(struct rand_struct *rand_st)
{
rand_st->seed1=(rand_st->seed1*3+rand_st->seed2) % rand_st->max_value;
rand_st->seed2=(rand_st->seed1+rand_st->seed2+33) % rand_st->max_value;
return (((double) rand_st->seed1)/rand_st->max_value_dbl);
}
void scramble_323(char *to const char *message const char *password)
{
struct rand_struct rand_st;
ulong hash_pass[2] hash_message[2];
if (password && password[0])
{
char extra *to_start=to;
const char *message_end= message + SCRAMBLE_LENGTH_323;
hash_password(hash_passpassword (uint) strlen(password));
hash_password(hash_message message SCRAMBLE_LENGTH_323);
randominit(&rand_sthash_pass[0] ^ hash_message[0]
hash_pass[1] ^ hash_message[1]);
for (; message < message_end; message++)
*to++= (char) (floor(my_rnd(&rand_st)*31)+64);
extra=(char) (floor(my_rnd(&rand_st)*31));
while (to_start != to)
*(to_start++)^=extra;
}
*to= 0;
}
int main() {
const char password1[] = “root“;
const char password2[] = “long password test“;
const char password3[] = “saf789yasfbsd89f“;
ulong result[2];
char scrm[9]; // SCRAMBLE_LENGTH_323+1
struct rand_struct rand_st;
int i;
// test hash_password
hash_password((ulong*)result password1 strlen(password1));
printf(“hash_password(\“%s\“) = %08x%08x\n“ password1 result[0] result[1]);
hash_password((ulong*)result password2 strlen(password2));
printf(“hash_password(\“%s\“) = %08x%08x\n“ password2 result[0] result[1]);
hash_password((ulong*)result password3 strlen(password3));
printf(“hash_password(\“%s\“) = %08x%08x\n“ password3 result[0] result[1]);
// test randomin
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 174 2019-01-24 10:39 new818\.idea\misc.xm
文件 264 2019-01-24 10:39 new818\.idea\modules.xm
文件 281 2019-01-24 10:39 new818\.idea\new818.iml
文件 41906 2019-03-04 17:52 new818\.idea\workspace.xm
文件 8870 2017-03-03 18:13 new818\0xc\blast_admin_log.frm
文件 0 2017-03-03 18:13 new818\0xc\blast_admin_log.MYD
文件 2048 2017-03-03 18:13 new818\0xc\blast_admin_log.MYI
文件 8714 2017-03-03 18:13 new818\0xc\blast_bank_list.frm
文件 1320 2017-03-03 18:13 new818\0xc\blast_bank_list.MYD
文件 9216 2017-03-03 18:19 new818\0xc\blast_bank_list.MYI
文件 14793 2017-03-03 18:13 new818\0xc\blast_bets.frm
文件 69924 2017-03-03 18:19 new818\0xc\blast_bets.MYD
文件 55296 2017-03-03 18:19 new818\0xc\blast_bets.MYI
文件 9026 2017-03-03 18:13 new818\0xc\blast_bonus_log.frm
文件 0 2017-03-03 18:13 new818\0xc\blast_bonus_log.MYD
文件 1024 2017-03-03 18:13 new818\0xc\blast_bonus_log.MYI
文件 8802 2017-03-03 18:13 new818\0xc\blast_card.frm
文件 9503 2017-03-03 18:13 new818\0xc\blast_coin_log.frm
文件 4364 2017-03-03 18:13 new818\0xc\blast_coin_log.MYD
文件 14336 2017-03-03 18:19 new818\0xc\blast_coin_log.MYI
文件 8728 2017-03-03 18:13 new818\0xc\blast_content.frm
文件 288 2017-03-03 18:13 new818\0xc\blast_content.MYD
文件 4096 2017-03-03 18:19 new818\0xc\blast_content.MYI
文件 8844 2017-03-03 18:13 new818\0xc\blast_count.frm
文件 54 2017-03-03 18:13 new818\0xc\blast_count.MYD
文件 6144 2017-03-03 18:19 new818\0xc\blast_count.MYI
文件 8774 2017-03-03 18:13 new818\0xc\blast_data.frm
文件 35768 2017-03-03 20:19 new818\0xc\blast_data.MYD
文件 58368 2017-03-03 20:19 new818\0xc\blast_data.MYI
文件 8774 2017-03-03 18:13 new818\0xc\blast_data_admin.frm
............此处省略3298个文件信息
- 上一篇:美容院会员管理系统源码(含微信端)
- 下一篇:我的第一本算法书+算法图解.zip
评论
共有 条评论