GNU/Linux >> Znalost Linux >  >> Linux

Jak kódovat base64 /dev/random nebo /dev/urandom?

Takže, co je špatného na

cat /dev/urandom | uuencode -

?

Opraveno poté, co první pokus ve skutečnosti nefungoval... ::vzdych::

BTW-- Mnoho unixových nástrojů používá '-' místo názvu souboru, což znamená "použít standardní vstup".


Řada lidí navrhla cat a potrubí přes base64 nebo uuencode . Jedním z problémů je, že nemůžete ovládat, kolik dat chcete číst (bude to pokračovat navždy, nebo dokud nestisknete ctrl+c). Další možností je použít dd příkaz, který vám umožní určit, kolik dat se má číst před ukončením. Chcete-li například přečíst 1 kb:

dd if=/dev/urandom bs=1k count=1 2>/dev/null | base64

Další možností je použít kanál na strings příkaz, který může poskytovat větší rozmanitost ve svém výstupu (netisknutelné znaky jsou vyřazeny, zobrazují se všechny běhy alespoň 4 tisknutelných znaků [ve výchozím nastavení]). Problém s strings spočívá v tom, že zobrazuje každý "běh" na vlastním řádku.

dd if=/dev/urandom bs=1k count=1 2>/dev/null | strings

(samozřejmě můžete celý příkaz nahradit pomocí

strings /dev/urandom

pokud nechcete, aby to někdy přestalo).

Pokud chcete něco opravdu funky, zkuste jeden z:

cat -v /dev/urandom
dd if=/dev/urandom bs=1k count=1 2>/dev/null | cat -v

Co třeba něco jako

cat /dev/urandom | base64

Což dává (spoustu) věcí jako

hX6VYoTG6n+suzKhPl35rI+Bsef8FwVKDYlzEJ2i5HLKa38SLLrE9bW9jViSR1PJGsDmNOEgWu+6
HdYm9SsRDcvDlZAdMXAiHBmq6BZXnj0w87YbdMnB0e2fyUY6ZkiHw+A0oNWCnJLME9/6vJUGsnPL
TEw4YI0fX5ZUvItt0skSSmI5EhaZn09gWEBKRjXVoGCOWVlXbOURkOcbemhsF1pGsRE2WKiOSvsr
Xj/5swkAA5csea1TW5mQ1qe7GBls6QBYapkxEMmJxXvatxFWjHVT3lKV0YVR3SI2CxOBePUgWxiL
ZkQccl+PGBWmkD7vW62bu1Lkp8edf7R/E653pi+e4WjLkN2wKl1uBbRroFsT71NzNBalvR/ZkFaa
2I04koI49ijYuqNojN5PoutNAVijyJDA9xMn1Z5UTdUB7LNerWiU64fUl+cgCC1g+nU2IOH7MEbv
gT0Mr5V+XAeLJUJSkFmxqg75U+mnUkpFF2dJiWivjvnuFO+khdjbVYNMD11n4fCQvN9AywzH23uo
03iOY1uv27ENeBfieFxiRwFfEkPDgTyIL3W6zgL0MEvxetk5kc0EJTlhvin7PwD/BtosN2dlfPvw
cjTKbdf43fru+WnFknH4cQq1LzN/foZqp+4FmoLjCvda21+Ckediz5mOhl0Gzuof8AuDFvReF5OU

Nebo bez (zbytečné) kočky + dýmky :

base64 /dev/urandom

(Stejný druh výstupu ^^ )


UPRAVIT: můžete také použít --wrap možnost base64 , abyste se vyhnuli "krátkým čarám" :

base64 --wrap=0 /dev/urandom

Tím se odstraní obalování a získáte zobrazení na celou obrazovku ^^


Linux
  1. Jak vyměnit vadný pevný disk v softwarovém RAID systému Linux

  2. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  3. Linux:Rozdíl mezi /dev/console, /dev/tty a /dev/tty0?

  1. Jak přenosné jsou /dev/stdin, /dev/stdout a /dev/stderr?

  2. Jak namapovat zařízení /dev/sdX a /dev/mapper/mpathY ze zařízení /dev/dm-Z

  3. Jak zaměníte /dev/sda s /dev/sdb?

  1. Jak vygenerovat náhodné heslo v linuxu pomocí /dev/random

  2. Je špatné propojit /dev/random s /dev/urandom v Linuxu?

  3. Rozdíly mezi /dev/sda a /dev/sda1