Base64 по своей базе

Artix

Guest
Base64 по своей базе

Насколько мне известно, функция base64_encode кодирте по base64 использую базу
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=


Как закодировать в base64 по базе
ABCDEFGHIJKLMNOPQRSTUVWXYZ

?
 

SiMM

Новичок
Это уже не base64. А вообще - представляешь свои входные данные в виде одного большого числа и переводишь его в свою систему счисления. Правда, гораздо проще это делать, когда основание "своей" системы счисления является степенью 2ки. Однако ещё раз повторюсь - это уже не base64 и раскодировать данные придётся самостоятельно.
 

fixxxer

К.О.
Партнер клуба
если проблема в регистрочувствительности, возможно, тебе подойдет uuencode.
 

Artix

Guest
блину меня строка, похожая на базу только там онли верхний регистр, мне надо туда закодировать
 

Crazy

Developer
Artix, прекрати бредить и расскажи связно, что и зачем ты хочешь сделать.
 

ys

отодвинутый новичок
Crazy

Телетайп вроде пятибитный.
Может он хочет телетайпом двоичные данные передавать :)
 

Artix

Guest
Crazy, ys,
мне надо закодировать строку в base64 по базе A-Z
 

SiMM

Новичок
Artix, хватит бредить на яву. Иди в гугле поищи, что значит base64 (и почему именно так называется), если до тебя не доходит или это не очевидно. Остальное я тебе уже сказал.
 

Artix

Guest
тебе наверно следует знать, что бывает MIME Base64, которую мы привыкли использовать везде. Она базируется на методе Base64, только приставка MIME обозначает что кодирование было по определенной базе произведено (A-Za-z0-9 и тп). Я ж спрашиваю про Base64 вообще, как мне со своей базой сделать

Вообщем дайте пример как в base64 закодить без функции base64_encode
 

SiMM

Новичок
base64 может быть ТОЛЬКО из 64х символьного алфавита (именно оттуда и берётся увеличение объёма данных на 33%, поскольку 8 бит/6 бит = 1,33). Ты же ему пытаешься 26 подсунуть. Примеры ищи в гугле, в том же RFC должно быть описание, в двух словах тебе идею уже описали. А бредни про MIME base64 оставь при себе и больше никому не рассказывай.

-~{}~ 17.01.05 19:47:

И вообще походу fixxxer был прав - но кто ж виноват, что ты проблему описать не умеешь, а данные у тебя с потолка берутся?
 

Crazy

Developer
Автор оригинала: Artix
тебе наверно следует знать, что бывает MIME Base64, которую мы привыкли использовать везде. Она базируется на методе Base64, только приставка MIME обозначает что кодирование было по определенной базе произведено (A-Za-z0-9 и тп). Я ж спрашиваю про Base64 вообще, как мне со своей базой сделать
Артикс! НИКОГДА БОЛЬШЕ НЕ КУРИ ЭТУ ТРАВУ!

http://en.wikipedia.org/wiki/Base_64
 

Wicked

Новичок
если подойдет base16 (A..P):
PHP:
  function base16_encode($str) {
    $result = "";
    $A = ord("A");
    $l = strlen($str);
    for ($i = 0; $i < $l; $i++) {
      $result .= chr($A + (ord($str[$i]) >> 4)).
                 chr($A + (ord($str[$i])) % 16);
    }
    return $result;
}
 

Artix

Guest
Crazy, на любом другом форем тебя бы забангил нафиг бы уже
если ты ничего не понимаешь, ненадо показывать это другим, а тем более наезжать тут на всех

-~{}~ 18.01.05 14:57:

Crazy, прочитай че напиано, а потом
Modified Base64 is a data encoding scheme whereby characters above 0x80 (hexadecimal notation) are encoded using printable ASCII characters. It is a variant of Base64, and is primarily used for encoding Unicode text into UTF-7 format for use in MIME messages. See UTF-7 for examples.

Modified Base64 is standardized as RFC 1642, A Mail-Safe Transformation Format of Unicode.

Modified Base64 вот типа то что ищу
 

Gas

может по одной?
Artix
Забудь про base64, работу с битами проходил в школе на информатике?
Чтоб закодировать A-Z сколько бит надо?
Побитовые операторы
Ты бы уже написал эти 2 ф-ции давно.
 

SiMM

Новичок
Автор оригинала: Artix
Modified Base64 is standardized as RFC 1642, A Mail-Safe Transformation Format of Unicode.

Modified Base64 вот типа то что ищу
Вот и ставь вопрос правильно, а не чушь пиши. Ну и чего ты теперь от нас хочешь? Иди и читай RFC1642, ссылка там приводится. И вообще,
The main difference it has versus Base64 is that it does not use the "=" symbol for padding, as that character tends to require a fair amount of escaping. Instead, it pads the octet bits with 0s.
 

Wicked

Новичок
Artix, если тебе нужен Modified BASE64, то делай base64_encode, а потом отрезай (либо заменяй на \x00) все символы "=" :)

Но имей в виду, что в Modified BASE64 используются те же "A"-"Z", "a"-"z", "0"-"9", "+" и "/", а это явно не то, что тебе требуется в твоем первом посте.

PS: ты знаешь, чем ламер отличается от чайника? :)

PPS:
Crazy, на любом другом форем тебя бы забангил нафиг бы уже
Смотри как бы он тебя тут не "забангил" ;)
 

Crazy

Developer
Автор оригинала: Artix
а тем более наезжать тут на всех
Объясняю еще раз, медленно: все, что ты написал в этом треде, есть чушь и бред. И извинительно это только по обкурке. Но траву эту лично я категорически не рекомендую курить. Ты к ней еще не готов.

Так что совет мой суть не наезд, а сугубо медицинская рекомендация.

Crazy, прочитай че напиано, а потом
Беда в том, что я могу не только читать и цитировать, но и понимать прочитанное. Только святая наивность спасает тебя от понимания, каким клоуном ты себя здесь выставляешь. :)

Итак, твое утверждение:

MIME обозначает что кодирование было по определенной базе произведено (A-Za-z0-9 и тп)
И вот, как ты его обосновал:

Modified Base64 is a data encoding scheme whereby characters above 0x80 (hexadecimal notation) are encoded using printable ASCII characters. It is a variant of Base64, and is primarily used for encoding Unicode text into UTF-7 format for use in MIME messages. See UTF-7 for examples.
Любой человек, знающий буржуинский язык лучше уровня выпускника пятого класса сельской Кукуевской школы для детей, отстающих в развитии, со всей очевидностью поймет, что между этими двумя цитатами нет никакой логической связи.

Не секрет, что прием препаратов, влияющих на сознание, в том числе курение анаши, вызывает неадекватное построение логических связей. И как только влияние яда на твой организм прекратится, ты наверняка это осознаешь.

Так что минздрав тебя предупреждает.
 
Сверху