Закрыть Привет! Если вы читаете это - Вы еще не зарегистрированы. Это займет не больше минуты. Нажмите здесь, чтобы пройти регистрацию в несколько простых шагов, чтобы пользоваться всеми возможностями нашего форума. Обратите внимание, запрещены непристойные, матерные, бессмысленные (цифры, случайный набор букв) ники. Удачи!

Тема: Encode / Decode system

Показано с 1 по 1 из 1

  1. #1
    Пользователь

    Аватар для Dudkakud

    Статус: Оффлайн
    Регистрация:27.01.2016
    Сообщений:171
    Репутация:14 [+/-] 

    Encode / Decode system

    Система кодирования/декодирования.


    Виды кодирования/декодирования:

    1) C хешем(рекомендую использовать именно его, ибо взломать практически невозможно).
    2) Обычная смена символов(можно использовать, но лучше изменить значения кодов в массиве).

    Пример:

    Строка: кодирования encode!123
    Результат: 21602208207621362232220820522028140414041320153614 04219621362412254413681476134414881356136828322436 24482460

    Массив символов с кодами:

    (!) ДИАПАЗОН КОДОВ: 84 - 833
    Если < или > этих значений, то работать не будет.



    PHP код:
    $your_codes = [
        
    84 => "A",
        
    85 => "B",
        
    86 => "C",
        
    87 => "D",
        
    88 => "E",
        
    89 => "F",
        
    90 => "G",
        
    91 => "H",
        
    92 => "I",
        
    93 => "J",
        
    94 => "K",
        
    95 => "L",
        
    96 => "M",
        
    97 => "N",
        
    98 => "O",
        
    99 => "P",
        
    100 => "Q",
        
    101 => "R",
        
    102 => "S",
        
    103 => "T",
        
    104 => "U",
        
    105 => "V",
        
    106 => "W",
        
    107 => "X",
        
    108 => "Y",
        
    109 => "Z",
        
    110 => "a",
        
    111 => "b",
        
    112 => "c",
        
    113 => "d",
        
    114 => "e",
        
    115 => "f",
        
    116 => "g",
        
    117 => "h",
        
    118 => "i",
        
    119 => "j",
        
    120 => "k",
        
    121 => "l",
        
    122 => "m",
        
    123 => "n",
        
    124 => "o",
        
    125 => "p",
        
    126 => "q",
        
    127 => "r",
        
    128 => "s",
        
    129 => "t",
        
    130 => "u",
        
    131 => "v",
        
    132 => "w",
        
    133 => "x",
        
    134 => "y",
        
    135 => "z",
        
    136 => "А",
        
    137 => "Б",
        
    138 => "В",
        
    139 => "Г",
        
    140 => "Д",
        
    141 => "Е",
        
    142 => "Ё",
        
    143 => "Ж",
        
    144 => "З",
        
    145 => "И",
        
    146 => "Й",
        
    147 => "К",
        
    148 => "Л",
        
    149 => "М",
        
    150 => "Н",
        
    151 => "О",
        
    152 => "П",
        
    153 => "Р",
        
    154 => "С",
        
    155 => "Т",
        
    156 => "У",
        
    157 => "Ф",
        
    158 => "Х",
        
    159 => "Ц",
        
    160 => "Ч",
        
    161 => "Ш",
        
    162 => "Щ",
        
    163 => "Ъ",
        
    164 => "Ы",
        
    165 => "Ь",
        
    166 => "Э",
        
    167 => "Ю",
        
    168 => "Я",
        
    169 => "а",
        
    170 => "б",
        
    171 => "в",
        
    172 => "г",
        
    173 => "д",
        
    174 => "е",
        
    175 => "ё",
        
    176 => "ж",
        
    177 => "з",
        
    178 => "и",
        
    179 => "й",
        
    180 => "к",
        
    181 => "л",
        
    182 => "м",
        
    183 => "н",
        
    184 => "о",
        
    185 => "п",
        
    186 => "р",
        
    187 => "с",
        
    188 => "т",
        
    189 => "у",
        
    190 => "ф",
        
    191 => "х",
        
    192 => "ц",
        
    193 => "ч",
        
    194 => "ш",
        
    195 => "щ",
        
    196 => "ъ",
        
    197 => "ы",
        
    198 => "ь",
        
    199 => "э",
        
    200 => "ю",
        
    201 => "я",
        
    202 => "0",
        
    203 => "1",
        
    204 => "2",
        
    205 => "3",
        
    206 => "4",
        
    207 => "5",
        
    208 => "6",
        
    209 => "7",
        
    210 => "8",
        
    211 => "9",
        
    212 => " ",
        
    213 => "?",
        
    214 => "'",
        
    215 => '"',
        
    216 => "-",
        
    217 => "_",
        
    218 => "(",
        
    219 => ")",
        
    220 => "[",
        
    221 => "]",
        
    222 => "/",
        
    223 => "\/",
        
    224 => "=",
        
    225 => "+",
        
    226 => "*",
        
    227 => "&",
        
    228 => "^",
        
    229 => ":",
        
    230 => "%",
        
    231 => "$",
        
    232 => ";",
        
    233 => "#",
        
    234 => "№",
        
    235 => "@",
        
    236 => "!",
        
    237 => "~",
        
    238 => "`",
        
    239 => ".",
        
    240 => "<",
        
    241 => ">",
        
    242 => ",",
        
    243 => "|"
    ]; 
    Код:
    PHP код:
    mb_internal_encoding("UTF-8"); //обязательно, если используете не только латиницу

    function bear_encode($codes$hash$str){ 
         
       if(!empty(
    $hash)){ 
            
            
    $a rand(0mb_strlen($str)); 
             
            
    $str mb_substr($str0$a).$hash.mb_substr($str$a, ((mb_strlen($str) - $a))); 
            
       } 
            
        
    $str preg_split("//u"$str, -1PREG_SPLIT_NO_EMPTY); 
             
        for(
    $i 0$i <= (count($str)-1); $i++){ 
             
            
    $str[$i] = array_search($str[$i], $codestrue); 
                 
            
    $str[$i] = ($str[$i]*12); 

        } 

        
    $str implode(""$str); 

        return 
    $str
         


    function 
    bear_decode($codes$hash$str){ 
     
        if(
    ctype_digit($str) === true){ 

            
    $str str_split($str4);  

            for(
    $i 0$i <= (count($str)-1); $i++){ 

                
    $str[$i] = ($str[$i]/12); 

                
    $str[$i] = str_replace($str[$i], $codes[$str[$i]], $str[$i]); 

            }

            
    $str implode(""$str); 

            if(!empty(
    $hash)){ 

                if(
    strrpos($str$hash) === false){ 

                    exit(
    "Invalid code"); 
        
                } 
                else{ 

                    
    $str str_replace($hash""$str); 
     
                } 
            } 
        } 
        else{ 

            exit(
    "Error: string not of digits"); 

        } 

        return 
    $str
        

    Пример использования в коде:
    PHP код:
    bear_encode($your_codes"yourhash""кодирования encode!123");
    bear_decode($your_codes"yourhash""216022082076213622322208205220281404140413201536140421962136241225441368147613441488135613682832243624482460"); 
    Скачать: https://yadi.sk/d/grEscjIJ3RxiWy

    Автор: я
    Последний раз редактировалось Dudkakud; 04.03.2018 в 13:02. Причина: изменил код
  2. 2 пользователей сказали cпасибо Dudkakud за это полезное сообщение:

    muv4ansky (31.01.2018), Столичный (06.02.2018)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения