Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function generate_tripcode($name) {
- global $config;
- if ($trip = event('tripcode', $name))
- return $trip;
- if (!preg_match('/^([^#]+)?(##|#)(.+)$/', $name, $match))
- return array($name);
- $name = $match[1];
- if($name == ""){
- $name= $config['anonymous'];
- }
- $secure = $match[2] == '##';
- $trip = $match[3];
- // convert to SHIT_JIS encoding
- $trip = mb_convert_encoding($trip, 'Shift_JIS', 'UTF-8');
- // generate salt
- $salt = substr($trip . 'H..', 1, 2);
- $salt = preg_replace('/[^.-z]/', '.', $salt);
- $salt = strtr($salt, ':;<=>?@[\]^_`', 'ABCDEFGabcdef');
- if ($secure) {
- if (isset($config['custom_tripcode']["##{$trip}"]))
- $trip = $config['custom_tripcode']["##{$trip}"];
- else{
- $trip = substr(crypt($trip, str_replace('+', '.', '_..A.' . substr(base64_encode(sha1($trip . $config['secure_trip_salt'], true)), 0, 4))), -10);
- $trip = makeKoremutakeString($trip);
- }
- } else {
- if (isset($config['custom_tripcode']["#{$trip}"]))
- $trip = $config['custom_tripcode']["#{$trip}"];
- else
- $trip = substr(crypt($trip, $salt), -10);
- }
- if($secure){
- $trip = '!!' . $trip;
- } else{
- $trip = '!' . $trip;
- }
- return array($name, $trip);
- }
- //method from http://shorl.com/koremutake.php
- function makeKoremutakeString($str){
- $koremutake_arr = ["BA", "BE", "BI", "BO", "BU", "BY", "DA", "DE", "DI", "DO", "DU", "DY", "FA", "FE", "FI", "FO", "FU", "FY", "GA",
- "GE", "GI", "GO", "GU", "GY", "HA", "HE", "HI", "HO", "HU", "HY", "JA", "JE", "JI", "JO", "JU", "JY", "KA", "KE", "KI",
- "KO", "KU", "KY", "LA", "LE", "LI", "LO", "LU", "LY", "MA", "ME", "MI", "MO", "MU", "MY", "NA", "NE", "NI", "NO", "NU",
- "NY", "PA", "PE", "PI", "PO", "PU", "PY", "RA", "RE", "RI", "RO", "RU", "RY", "SA", "SE", "SI", "SO", "SU", "SY", "TA",
- "TE", "TI", "TO", "TU", "TY", "VA", "VE", "VI", "VO", "VU", "VY", "BRA", "BRE", "BRI", "BRO", "BRU", "BRY", "DRA", "DRE",
- "DRI", "DRO", "DRU", "DRY", "FRA", "FRE", "FRI", "FRO", "FRU", "FRY", "GRA", "GRE", "GRI", "GRO", "GRU", "GRY", "PRA",
- "PRE", "PRI", "PRO", "PRU", "PRY", "STA", "STE", "STI", "STO", "STU", "STY", "TRA", "TRE"];
- $str = str_replace(".", "+", $str);
- $str_dec = unpack('C*', base64_decode($str));
- $kore_str = "";
- foreach($str_dec as $key => $char_dec){
- $kore_str .= $koremutake_arr[$char_dec >> 1];
- var_dump(($char_dec >> 1));
- if($key % 3 == 0){
- $kore_str .= " - ";
- }
- }
- var_dump($kore_str);
- return $kore_str;
- }
Add Comment
Please, Sign In to add comment