/** * 2ch●ログインの保存済みIDとPASSと自動ログイン設定を読み込む */ public static function readIdPw2ch() { global $_conf; $login2chID = null; $login2chPW = null; $autoLogin2ch = false; if (file_exists($_conf['idpw2ch_php'])) { $rec_login2chID = null; $rec_login2chPW = null; $rec_autoLogin2ch = false; include $_conf['idpw2ch_php']; if (is_string($rec_login2chID)) { $login2chID = $rec_login2chID; } // パスワードを復号化 if (is_string($login2chID) && is_string($rec_login2chPW)) { $md5_crypt_key = self::getAngoKey(); $login2chPW = MD5Crypt::decrypt($rec_login2chPW, $md5_crypt_key, 32); } else { $login2chPW = null; } $autoLogin2ch = (bool) $rec_autoLogin2ch; } return array($login2chID, $login2chPW, $autoLogin2ch); }
/** */ function read($data, $key) { $md5crypt = new MD5Crypt(); return $md5crypt->decrypt($data, $key); }
/** * 2ch●ログインの保存済みIDとPASSと自動ログイン設定を読み込む */ public static function readIdPw2ch() { global $_conf; if (!file_exists($_conf['idpw2ch_php'])) { return false; } $rec_login2chID = NULL; $login2chPW = NULL; $rec_autoLogin2ch = NULL; include $_conf['idpw2ch_php']; // パスを複合化 if (!is_null($rec_login2chPW)) { $md5_crypt_key = self::getAngoKey(); $login2chPW = MD5Crypt::decrypt($rec_login2chPW, $md5_crypt_key, 32); } return array($rec_login2chID, $login2chPW, $rec_autoLogin2ch); }
/** * Cookie(CID)からユーザ情報を得る * * @return array|false 成功すれば配列、失敗なら false を返す */ public function getCidInfo($cid) { global $_conf; $dec = MD5Crypt::decrypt($cid, self::getMd5CryptPassForCid()); $cid_info = explode(':', $dec); switch (count($cid_info)) { case 3: break; case 4: $device_pixel_ratio = floatval(array_pop($cid_info)); if (isset($GLOBALS['_p2session']) && ($device_pixel_ratio === 1.5 || $device_pixel_ratio === 2.0)) { $_SESSION['device_pixel_ratio'] = $device_pixel_ratio; } break; default: return false; } list($user, $time, $md5_utpx) = $cid_info; if (!strlen($user) || !$time || !$md5_utpx) { return false; } // 有効期限 日数 if (time() > $time + 60 * 60 * 24 * $_conf['cid_expire_day']) { return false; // 期限切れ } return $cid_info; }
/** * Cookie(CID)からユーザ情報を得る * * @return array|false 成功すれば配列、失敗なら false を返す */ public function getCidInfo($cid) { global $_conf; $dec = MD5Crypt::decrypt($cid, self::getMd5CryptPassForCid()); $cid_info = explode(':', $dec); if (count($cid_info) != 3) { return false; } list($user, $time, $md5_utpx) = $cid_info; if (!strlen($user) || !$time || !$md5_utpx) { return false; } // 有効期限 日数 if (time() > $time + 60 * 60 * 24 * $_conf['cid_expire_day']) { return false; // 期限切れ } return $cid_info; }