亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? cryptif.c

?? Linux下的飛鴿傳書
?? C
?? 第 1 頁 / 共 2 頁
字號:
    g_free(session_key);  if (raw_enc_body)    g_free(raw_enc_body); free_peer_key_out:  if (key_e)    g_free(key_e);  if (key_n)    g_free(key_n); error_out:  return rc;}intipmsg_decrypt_message(const char *peer_addr,const char *message,unsigned char **ret_str,size_t *len){  int rc;  unsigned long this_cap;  unsigned char *hex_skey=NULL;  char *skey=NULL;  unsigned char *signed_message=NULL;  unsigned char *end_message_body_p=NULL;  unsigned char *enc_message=NULL;  unsigned char *hex_sign=NULL;  unsigned long skey_type,akey_type;  unsigned long sign_type;  unsigned char *enc_bin_body=NULL;  unsigned char *peer_key_e=NULL;  unsigned char *peer_key_n=NULL;  unsigned long tmp_cap;  unsigned long new_flags;  char *plain=NULL;  size_t plain_len;  size_t skey_len;  size_t enc_bin_len;    if ( (!message) || (!ret_str) || (!len) )    return -EINVAL;  rc=parse_encoded_message(message,			   &this_cap,			   &hex_skey,			   &enc_message,			   &hex_sign);  if (rc) {    err_out("Can not parse message\n");    goto error_out;  }  /*   * 暗號化に使用した鍵を取得   */  skey_type=get_symkey_part(this_cap);  /* 共通鍵 */  akey_type=get_asymkey_part(this_cap); /* 公開鍵 */  sign_type=get_sign_part(this_cap);  dbg_out("Cap:%x Skey:%x AKey:%x Sign:%x\n",this_cap,skey_type,akey_type,sign_type);  /*   *署名がある場合は署名を検証   */  g_assert(peer_addr); /* udpからの呼出しの場合はかならずいれる  */  if ( (hostinfo_get_ipmsg_crypt_capability() & sign_type) && (hex_sign) ) {    dbg_out("This message is signed by peer.\n");    /*     *相手の公開鍵を取得     */    rc=userdb_get_public_key_by_addr(peer_addr,&tmp_cap,(char **)&peer_key_e,(char **)&peer_key_n);    if (rc)      goto free_parsed_datas;    /* 編集用にコピー  */    signed_message=g_strdup(message);    rc=-ENOMEM;    if (!signed_message)      goto free_parsed_datas;    end_message_body_p=strrchr(signed_message,':');    if (!end_message_body_p) /*  異常データ  */      goto free_parsed_datas;    *end_message_body_p='\0'; /* 本文だけを參照  */    dbg_out("Verify:%s with %s\n",signed_message,hex_sign);    rc=pcrypt_verify_sign(this_cap,sign_type,signed_message, 			  hex_sign,peer_key_e,peer_key_n);    /*  失敗した場合でも, 不要なデータを開放してからぬける  */    if (rc) {      err_out("Verify failed:rc=%d\n",rc);      goto free_parsed_datas;    }    dbg_out("Verify OK\n");  }  /*   *共通鍵をデコード   */  /* FIXME 鍵のバリデーション(RSAが2つ以上設(shè)定されていないか) */  rc=pcrypt_decrypt_message(akey_type,hex_skey,&skey,&skey_len);  if (rc)    goto free_parsed_datas;  dbg_out("Decrypt key len:%d\n",skey_len);  /*   *暗號化された本文のバイナリ化   */  rc=string_hex2bin(enc_message,&enc_bin_len, &enc_bin_body);  if (rc)    goto free_skey;#if 0  print_hex(skey,skey_len);#endif  rc=symcrypt_decrypt_message(skey_type,enc_bin_body,enc_bin_len,			      skey,&plain,&plain_len);  if (rc)    goto free_enc_bin_body;  dbg_out("Decoded:%s len=%d\n",plain,plain_len);  *ret_str=plain;  *len=plain_len;  rc=0; free_enc_bin_body:  if (enc_bin_body)    g_free(enc_bin_body); free_skey:  if (skey)    g_free(skey); free_parsed_datas:  if (hex_skey)    g_free(hex_skey);  if (enc_message)    g_free(enc_message);  if (hex_sign)    g_free(hex_sign);  if (peer_key_e)    g_free(peer_key_e);  if (peer_key_n)    g_free(peer_key_n);  if (signed_message)    g_free(signed_message); error_out:  if (rc != 0) {    new_flags = hostinfo_get_normal_entry_flags();    new_flags &= ~IPMSG_ENCRYPTOPT;  /* 暗號化通信不可能であることを通知する  */    ipmsg_send_gratuitous_ans_entry(udp_con, peer_addr, new_flags);    ipmsg_err_dialog(_("Can not decode message from %s rc = %d"), peer_addr, rc);  }  return rc;}GtkWidget *internal_create_crypt_config_window(void){  int rc;  GtkWidget *configWindow;  GtkWidget *sendHostListChkBtn;  GtkWidget *obtainHostlistChkBtn;  GtkWidget *configRC2Bit40Btn;  GtkWidget *configRC2Bit128Btn;  GtkWidget *configRC2Bit256Btn;  GtkWidget *configBFBit128Btn;  GtkWidget *configBFBit256Btn;  GtkWidget *configRSABit512Btn;  GtkWidget *configRSABit1024Btn;  GtkWidget *configRSABit2048Btn;  GtkWidget *configMD5Btn;  GtkWidget *configSHA1Btn;  GtkWidget *keySelectAlgoCBtn;  GtkWidget *RSAKeyEncryptionCBtn;  GtkWidget *useLockCBtn;  unsigned long state;    configWindow=create_securityConfig ();  g_assert(configWindow);  sendHostListChkBtn=lookup_widget(configWindow,"sendHostListChkBtn");  obtainHostlistChkBtn=lookup_widget(configWindow,"obtainHostlistChkBtn");  configRC2Bit40Btn=lookup_widget(configWindow,"configRC2Bit40Btn");  configRC2Bit128Btn=lookup_widget(configWindow, "configRC2Bit128Btn");  configRC2Bit256Btn=lookup_widget(configWindow, "configRC2Bit256Btn");  configBFBit128Btn=lookup_widget(configWindow, "configBFBit128Btn");  configBFBit256Btn=lookup_widget(configWindow, "configBFBit256Btn");  configRSABit512Btn=lookup_widget(configWindow, "configRSABit512Btn");  configRSABit1024Btn=lookup_widget(configWindow, "configRSABit1024Btn");  configRSABit2048Btn=lookup_widget(configWindow, "configRSABit2048Btn");  configMD5Btn=lookup_widget(configWindow, "configMD5Btn");  configSHA1Btn=lookup_widget(configWindow, "configSHA1Btn");  keySelectAlgoCBtn=lookup_widget(configWindow, "keySelectAlgoCBtn");  RSAKeyEncryptionCBtn=lookup_widget(configWindow, "RSAKeyEncryptionCBtn");  useLockCBtn=lookup_widget(configWindow, "useLockCBtn");  rc=hostinfo_refer_ipmsg_cipher(&state);  if (rc)    return;  /*   *ホストリスト制御   */  if (hostinfo_refer_ipmsg_is_allow_hlist())    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sendHostListChkBtn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(sendHostListChkBtn),FALSE);  if (hostinfo_refer_ipmsg_is_get_hlist())    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(obtainHostlistChkBtn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(obtainHostlistChkBtn),FALSE);  /*   *暗號選択   */  if (state & IPMSG_RC2_40)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRC2Bit40Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRC2Bit40Btn),FALSE);  if (state & IPMSG_RC2_128)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRC2Bit128Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRC2Bit128Btn),FALSE);  if (state & IPMSG_RC2_256)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRC2Bit256Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRC2Bit256Btn),FALSE);  if (state & IPMSG_BLOWFISH_128)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configBFBit128Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configBFBit128Btn),FALSE);  if (state & IPMSG_BLOWFISH_256)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configBFBit256Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configBFBit256Btn),FALSE);  if (state & IPMSG_RSA_512)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRSABit512Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRSABit512Btn),FALSE);  if (state & IPMSG_RSA_1024)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRSABit1024Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRSABit1024Btn),FALSE);  if (state & IPMSG_RSA_2048)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRSABit2048Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configRSABit2048Btn),FALSE);  if (state & IPMSG_SIGN_MD5)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configMD5Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configMD5Btn),FALSE);  if (state & IPMSG_SIGN_SHA1)    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configSHA1Btn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(configSHA1Btn),FALSE);  if (hostinfo_refer_ipmsg_crypt_policy_is_speed())    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(keySelectAlgoCBtn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(keySelectAlgoCBtn),FALSE);  if (hostinfo_refer_ipmsg_encrypt_public_key())    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(RSAKeyEncryptionCBtn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(RSAKeyEncryptionCBtn),FALSE);  if (hostinfo_refer_ipmsg_use_lock())    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(useLockCBtn),TRUE);  else    gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(useLockCBtn),FALSE);  return configWindow;}int apply_crypt_config_window(GtkWindow *configWindow){  int rc;  GtkWidget *sendHostListChkBtn;  GtkWidget *obtainHostlistChkBtn;  GtkWidget *configRC2Bit40Btn;  GtkWidget *configRC2Bit128Btn;  GtkWidget *configRC2Bit256Btn;  GtkWidget *configBFBit128Btn;  GtkWidget *configBFBit256Btn;  GtkWidget *configRSABit512Btn;  GtkWidget *configRSABit1024Btn;  GtkWidget *configRSABit2048Btn;  GtkWidget *configMD5Btn;  GtkWidget *configSHA1Btn;  GtkWidget *keySelectAlgoCBtn;  GtkWidget *RSAKeyEncryptionCBtn;  GtkWidget *useLockCBtn;  unsigned long state;    if (!configWindow)    return -EINVAL;  sendHostListChkBtn=lookup_widget(GTK_WIDGET(configWindow),"sendHostListChkBtn");  obtainHostlistChkBtn=lookup_widget(GTK_WIDGET(configWindow),"obtainHostlistChkBtn");  configRC2Bit40Btn=lookup_widget(GTK_WIDGET(configWindow),"configRC2Bit40Btn");  configRC2Bit128Btn=lookup_widget(GTK_WIDGET(configWindow), "configRC2Bit128Btn");  configRC2Bit256Btn=lookup_widget(GTK_WIDGET(configWindow), "configRC2Bit256Btn");  configBFBit128Btn=lookup_widget(GTK_WIDGET(configWindow), "configBFBit128Btn");  configBFBit256Btn=lookup_widget(GTK_WIDGET(configWindow), "configBFBit256Btn");  configRSABit512Btn=lookup_widget(GTK_WIDGET(configWindow), "configRSABit512Btn");  configRSABit1024Btn=lookup_widget(GTK_WIDGET(configWindow), "configRSABit1024Btn");  configRSABit2048Btn=lookup_widget(GTK_WIDGET(configWindow), "configRSABit2048Btn");  configMD5Btn=lookup_widget(GTK_WIDGET(configWindow), "configMD5Btn");  configSHA1Btn=lookup_widget(GTK_WIDGET(configWindow), "configSHA1Btn");  keySelectAlgoCBtn=lookup_widget(GTK_WIDGET(configWindow), "keySelectAlgoCBtn");  RSAKeyEncryptionCBtn=lookup_widget(GTK_WIDGET(configWindow), "RSAKeyEncryptionCBtn");  useLockCBtn=lookup_widget(GTK_WIDGET(configWindow), "useLockCBtn");  /*   *ホストリスト制御   */  hostinfo_set_ipmsg_is_allow_hlist(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(sendHostListChkBtn)));   hostinfo_set_ipmsg_is_get_hlist(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(obtainHostlistChkBtn)));  /*   *暗號選択   */  /*   * 共通鍵   */  state=0;  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configRC2Bit40Btn)))    state |= IPMSG_RC2_40;  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configRC2Bit128Btn)))    state |= IPMSG_RC2_128;  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configRC2Bit256Btn)))    state |= IPMSG_RC2_256;  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configBFBit128Btn)))    state |= IPMSG_BLOWFISH_128;  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configBFBit256Btn)))    state |= IPMSG_BLOWFISH_256;  /*   * RSA   */  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configRSABit512Btn)))    state |= IPMSG_RSA_512;  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configRSABit1024Btn)))    state |= IPMSG_RSA_1024;  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configRSABit2048Btn)))    state |= IPMSG_RSA_2048;  /*   * 署名   */  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configMD5Btn)))    state |= IPMSG_SIGN_MD5;  if (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(configSHA1Btn)))    state |= IPMSG_SIGN_SHA1;  hostinfo_set_ipmsg_cipher(state);  /*   * セキュリティ設(shè)定   */  hostinfo_set_ipmsg_crypt_policy_as_speed(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(keySelectAlgoCBtn)));  hostinfo_set_ipmsg_encrypt_public_key(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(RSAKeyEncryptionCBtn)));  hostinfo_set_ipmsg_use_lock(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(useLockCBtn)));  return 0;}static intenter_password(void){  int rc;  GtkWidget *window=NULL;  gint result;  window=create_passwdWindow();  g_assert(window);    return 0;}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲人精品一区| 亚洲国产色一区| 欧美精品丝袜中出| 国产精品伊人色| 日本中文在线一区| 亚洲激情在线激情| 国产视频一区二区在线观看| 欧美在线看片a免费观看| 精品在线你懂的| 性做久久久久久久免费看| 欧美极品aⅴ影院| 精品久久免费看| 欧美日韩国产乱码电影| www..com久久爱| 国产精品自拍网站| 美脚の诱脚舐め脚责91 | 美女任你摸久久| 亚洲一区免费在线观看| 中文字幕一区二区三区色视频| 日韩丝袜情趣美女图片| 欧美日韩中文另类| 91成人在线免费观看| 不卡一区二区三区四区| 欧美性感一类影片在线播放| 成人97人人超碰人人99| 国产东北露脸精品视频| 久久99精品久久只有精品| 亚洲成人久久影院| 亚洲精品成人天堂一二三| 亚洲欧洲国产专区| 1024国产精品| 国产精品国模大尺度视频| 日本一区二区动态图| 久久嫩草精品久久久精品| 日韩欧美成人午夜| 欧美成人高清电影在线| 日韩三级伦理片妻子的秘密按摩| 欧美日韩国产片| 欧美精品久久天天躁| 欧美日韩国产综合一区二区三区| 欧美三级资源在线| 欧美日韩中文字幕一区二区| 欧美少妇xxx| 欧美中文一区二区三区| 欧美网站一区二区| 欧美午夜电影一区| 欧美亚洲丝袜传媒另类| 欧美日韩国产高清一区二区三区 | 老司机精品视频在线| 免费在线看成人av| 韩国一区二区视频| 国产精品羞羞答答xxdd| 成人综合日日夜夜| 91视频观看免费| 在线观看视频91| 欧美高清你懂得| 久久综合九色综合欧美亚洲| 久久人人97超碰com| 国产三级精品三级| ...av二区三区久久精品| 一区二区三区不卡在线观看| 亚洲r级在线视频| 久久精品国产在热久久| 国产 日韩 欧美大片| 97久久超碰国产精品电影| 欧美亚洲一区三区| 精品日韩成人av| 国产精品久久看| 香蕉久久一区二区不卡无毒影院 | 粉嫩蜜臀av国产精品网站| 色偷偷久久一区二区三区| 91超碰这里只有精品国产| 欧美精品一区在线观看| 中文字幕欧美三区| 日韩精品一二三区| 国产成a人无v码亚洲福利| 色视频一区二区| 精品黑人一区二区三区久久| 国产校园另类小说区| 亚洲一区二区三区视频在线 | 亚洲乱码精品一二三四区日韩在线| 亚洲大片精品永久免费| 狠狠久久亚洲欧美| 色综合久久天天| 亚洲精品在线观看网站| 亚洲人成网站精品片在线观看| 日本亚洲最大的色成网站www| 成人黄色电影在线| 欧美喷水一区二区| 国产精品热久久久久夜色精品三区| 亚洲第一搞黄网站| 成人国产精品免费观看动漫| 在线电影国产精品| 中文字幕一区二区三区四区| 免费在线一区观看| 色老综合老女人久久久| 亚洲精品一区二区三区在线观看| 亚洲日本青草视频在线怡红院 | 国产一区二区网址| 欧美午夜精品理论片a级按摩| 国产欧美va欧美不卡在线| 丝袜美腿亚洲综合| 色综合中文字幕| 国产日产欧美一区二区三区| 亚洲成人资源在线| 99久久久精品免费观看国产蜜| 欧美mv日韩mv| 五月综合激情网| 91美女片黄在线| 国产精品国产三级国产普通话三级| 精品一区二区三区在线视频| 欧美手机在线视频| 亚洲视频1区2区| 成人动漫一区二区| 久久久噜噜噜久久中文字幕色伊伊| 丝袜a∨在线一区二区三区不卡| 色成人在线视频| 中文字幕精品三区| 国产成人啪免费观看软件| 日韩免费观看高清完整版| 亚洲国产精品久久人人爱| 91蝌蚪porny九色| 国产精品理论片在线观看| 国产ts人妖一区二区| 久久免费偷拍视频| 激情欧美一区二区| 日韩三级电影网址| 日本强好片久久久久久aaa| 欧美四级电影网| 亚洲永久精品国产| 欧日韩精品视频| 亚洲女厕所小便bbb| 99国产精品视频免费观看| 国产精品美女久久久久久久 | 欧美日韩国产高清一区二区| 亚洲精品中文在线观看| 色偷偷久久人人79超碰人人澡| 亚洲欧美日韩中文字幕一区二区三区| 成人午夜私人影院| 亚洲视频在线观看一区| av高清不卡在线| 亚洲激情一二三区| 欧美三级日韩三级国产三级| 亚洲一级不卡视频| 欧美肥大bbwbbw高潮| 日韩激情av在线| 日韩视频免费观看高清完整版在线观看 | 国产欧美日韩在线| 成人高清在线视频| 中文字幕免费观看一区| 99久久精品99国产精品 | 国产精品成人在线观看| 91亚洲大成网污www| 尤物在线观看一区| 精品视频一区三区九区| 蜜桃视频一区二区三区| 国产精品1区2区3区在线观看| 久久综合给合久久狠狠狠97色69| 欧美日本在线播放| 热久久一区二区| 亚洲精品在线免费观看视频| 丁香网亚洲国际| 亚洲免费视频中文字幕| 欧美日韩国产中文| 极品美女销魂一区二区三区免费| 国产网红主播福利一区二区| 91丝袜美腿高跟国产极品老师| 一区二区在线观看视频 | 欧美丰满嫩嫩电影| 蜜桃视频第一区免费观看| xfplay精品久久| 99热国产精品| 美女一区二区三区| 国产精品精品国产色婷婷| 在线免费视频一区二区| 免费视频一区二区| 国产精品美女久久久久高潮| 欧美色图一区二区三区| 麻豆91免费观看| 亚洲激情六月丁香| 久久久久青草大香线综合精品| 色噜噜狠狠成人网p站| 精品一区二区三区免费观看| 亚洲日本电影在线| 精品粉嫩超白一线天av| 在线视频亚洲一区| 国产不卡视频一区| 视频一区二区国产| 国产精品嫩草久久久久| 日韩精品一区二区三区中文不卡 | 成人福利视频网站| 美国十次了思思久久精品导航| 亚洲色图另类专区| 2019国产精品| 欧美日韩国产综合草草| 91丨九色丨黑人外教| 另类小说综合欧美亚洲| 亚洲一级在线观看| 综合精品久久久| 久久久精品一品道一区|