Portál AbcLinuxu, 29. dubna 2024 00:06


Dotaz: Hledám funkci pro BASH

17.12.2017 15:56 RR
Hledám funkci pro BASH
Přečteno: 1196×
Odpovědět | Admin
Zdravím. Umí prosím bash něco takového? Děkuji
tajny-text > quY93vna5EMPb3q9Puur
a
quY93vna5EMPb3q9Puur > tajny-text

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

17.12.2017 16:34 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Odpovědět | | Sbalit | Link | Blokovat | Admin
Bash přímo ne, shell se většinou používá pro volání externích programů. A šifrovat umí třeba GPG nebo OpenSSL.
17.12.2017 17:13 bash
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Odpovědět | | Sbalit | Link | Blokovat | Admin
To je program kriptovanie a sifrovanie. Takze vybrat si algoritmus, najst shell implementaciu a pouzit ju.
17.12.2017 17:15 bash
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
To je problem kriptovanie a sifrovanie. Takze vybrat si algoritmus, najst shell implementaciu a pouzit ju.
Řešení 1× (Georgo10)
Jendа avatar 17.12.2017 20:27 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Odpovědět | | Sbalit | Link | Blokovat | Admin
sed -re "s/tajny-text/quY93vna5EMPb3q9Puur/"

sed -re "s/quY93vna5EMPb3q9Puur/tajny-text/"
nz
Já to s tou denacifikací Slovenska myslel vážně.
17.12.2017 20:34 rastos | skóre: 62 | blog: rastos
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
;-)

V duchu hesla: na každú otázku existuje jednoduchá, správna a nepoužiteľná odpoveď.
Jendа avatar 17.12.2017 20:38 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Tazatel neřekl nic o použité šifře a z těch dat to poznat není (až na to, že to je validní base64 dlouhé 15 bajtů, což znamená buď délku bloku 120 bitů, nebo proudovou šifru + 5 bajtů IV/auth tag, což snad vůbec nikde neexistuje).
20.12.2017 05:01 pc2005 | skóre: 38 | blog: GardenOfEdenConfiguration | liberec
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
20.12.2017 00:10 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Odpovědět | | Sbalit | Link | Blokovat | Admin

Tyhle domácí úkoly… Podle mě to postrádá smysl, pokud je člověk nevyřeší nějak samostatně. :-) Není jasné, o jakou šifru se jedná. Takže Bash může umět třeba tohle:

$ string2base64 tajny-text
dGFqbnktdGV4dA==

$ string2base64 tajny-text | base64 -d
tajny-text

Implementace string2base64 se dá klidně udělat à la prase — například následující věc je v čistém Bashi bez dalších procesů. Ale neumí to ani náhodou Unicode a dokonce to neumí správně ošetřit nulový byte. Ale jinak to téměř funguje. Specifikace je třeba tady. Dekodér z base64 zpět do plaintextu si pozorný čtenář zajisté dovede sám naimplementovat za cvičení, podobně jako drobnou úpravu, která by string2base64 umožnila zpracovávat stream neomezené délky. Výkonnostních optimalizací se tam nabízí tři spousty a půl.

#!/bin/bash

# Creates a global mapping from ASCII bytes 1..255 to their binary codes.
# For example, 'a' (i.e., ${#BYTE2CODE['a']}) maps to '01100001'.
initcache() {
  if ((255 != "${#BYTE2CODE[@]}")); then
    declare -Ag BYTE2CODE
    local -i i
    for ((i = 1; i < 256; ++i)); do
      eval BYTE2CODE[$\'\\x"$(printf '%x' "$i")"\']="$(code2bin "$i")"
    done
  fi
}

# Translates an ASCII byte in decimal notation into an 8-digit binary literal.
# For example, argument '97' (otherwise known as 0x61 or 'a') yields '01100001'.
code2bin() {
  local -ai bits=(0 0 0 0 0 0 0 0)
  local -i number="$1"
  local -i idx=${#bits[@]}
  local -i i
  while ((number && idx)); do
    bits[--idx]='number % 2'
    ((number /= 2))
  done
  for ((i = 0; i < ${#bits[@]}; ++i)); do
      echo -n "${bits[i]}"
  done
}

# Translates a string into a binary representation suitable for base64 encoding.
# The first output line is the number of padding characters (0 to 2).
# Each subsequent line is a binary representation of 3 bytes or 4 base64 digits.
# For example, argument 'aa' yields '1' (1 padding symbol) on the first line and
# '011000010110000100000000' (24 bits of data) on the second line.
string2code() {
  local -ri equals=$(((3 - ${#1} % 3) % 3))
  local -i i
  local buffer="$equals"
  for ((i = 0; i < ${#1}; ++i)); do
    if ((!(i % 3))); then
      echo "$buffer"
      buffer=
    fi
    buffer+="${BYTE2CODE[${1:i:1}]}"
  done
  echo -n "$buffer"
  for ((i = 0; i < equals; ++i)); do
    code2bin 0
  done
  echo
}

# Translates 6 bits (a string of '0' and '1' characters) to a base64 digit.
# For example, argument '100111' (39 in decimal notation) yields 'n'.
bin2basechar() {
  local -ri code=2#"$1"
  local -a chars
  if ((code < 26)); then
    chars=(A B C D E F G H I J K L M N O P Q R S T U V W X Y Z)
    echo -n "${chars[code]}"
  elif ((code < 52)); then
    chars=(a b c d e f g h i j k l m n o p q r s t u v w x y z)
    echo -n "${chars[code - 26]}"
  elif ((code < 62)); then
    chars=(0 1 2 3 4 5 6 7 8 9)
    echo -n "${chars[code - 52]}"
  else
    chars=(+ /)
    echo -n "${chars[code - 62]}"
  fi
}

# Translates its first (and only) argument into base64.
# For example, argument 'doprdele' yields 'ZG9wcmRlbGU='.
string2base64() {
  local -a fragments
  local fragment
  local line
  local -i equals
  local -i i
  local chars
  initcache
  string2code "$1" | {
    read equals
    while read line; do
      echo -n "$chars"
      fragments=("${line:0:6}" "${line:6:6}" "${line:12:6}" "${line:18:6}")
      chars=
      for fragment in "${fragments[@]}"; do
        chars+="$(bin2basechar "$fragment")"
      done
    done
    if ((equals)); then
        echo -n "${chars:0:-equals}"
        for ((i = 0; i < equals; ++i)); do echo -n '='; done
    else
        echo -n "$chars"
    fi
    echo
  }
}

Pár příkladů, kde k zakódování používám výše uvedenou funkci string2base64 a k dekódování slouží base64 z coreutils:

$ string2base64 zzz$'\xa' 
enp6Cg==

$ string2base64 'bla bla bla'$'\xa' 
YmxhIGJsYSBibGEK

$ string2base64 zzz$'\xa' | base64 -d
zzz

$ string2base64 'bla bla bla'$'\xa' | base64 -d
bla bla bla

(Konce řádků jsou tam^^^ samozřejmě jen tak bezdůvodně, because we can.) A tady ještě drobný test, jestli to vůbec něco rozumného dělá:

for i in x{a..z} {A..Z}y a{0..9}b; do
  echo -n "${i} "
  string2base64 "$i" | base64 -d
  echo
done
20.12.2017 07:01 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Akorát že BASE64 není šifra, takže po případném zveřejnění výstupu už by ten text vůbec nebyl tajný. Ale samozřejmě je otázka, zda chtěl RR šifrovat nebo co vlastně chtěl.
20.12.2017 11:15 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
BASE64 je aj šifra keďŽe zneprehľadňnuje vstup. Akurát že má kvality podobne ako Cézarova šifra.
21.12.2017 06:49 rastos | skóre: 62 | blog: rastos
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Pripúšťaš, že je rozdiel medzi kódom (kódovaním) a šifrou?
20.12.2017 12:20 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH

Já přece netvrdím, že Base64 je šifra. Jenom jsem chtěl (zdlouhavě, protože proč ne) naznačit, že k řešení úkolu s opravdovou šifrou je lepší začít od něčeho mnohem jednoduššího, co se taky zabývá jednotlivými bity.

20.12.2017 19:10 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Áno. Ty tvrdíš že nie je, pričom je.
20.12.2017 21:45 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Není. Účelem šifry je zpřístupnit text pouze adresátovi a znepřístupnit jej všem ostatním. Caesarova šifra je z dnešního pohledu velmi primitivní, ale ve své době fungovala a její účelem bylo znepřístupnit text. Účelem BASE64 nikdy nebylo znepřístupnit text.
21.12.2017 12:08 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
A to spĺňa aj Base64. Ak nevieš čo to je, tak to neprečítaš. Ak vieš, tak prečítaš.

Na druhú stranu, účelom tvojho splodenia nikdy nebolo aby si odpovedal na môj príspevok. Ale bol si na to využitý. Toľko k tvojmu poňatiu plánovania využiteľnosti nástrojov.
21.12.2017 17:56 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
To, že vstup proženete přes BASE64, když nevíte, co to je, děláte možná vy – normální lidi ale BASE64 používají jenom tehdy, když vědí, k čemu to je.
21.12.2017 18:43 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Ten prístup by negoval použitie napríklad šifry Navajo keďže ten jazyk bol vytvorený na komunikáciu a nie jej utajenie. Ale to nepochopí človek pre ktorého má jeden nástroj len jediné určenie. A nikdy napríklad nezatĺkol kliniec sekerou. Keďže sekera je určená na štiepanie dreva.
21.12.2017 22:44 Kit | skóre: 45 | Brno
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Navajo nebylo šifrování, ale kódování, i když bylo vyvinuto za účelem utajení sdělení.
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
22.12.2017 10:35 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Polemizujete sice hezky, ale já jsem nikde nepsal nic o vytvoření ani o tom, že by měl nástroj jen jedno určení.
22.12.2017 16:10 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Odmietanie alternatívneho využitia je teda čo?
22.12.2017 18:00 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH

Je potřeba rozlišovat mezi šifrou a kódem. Rozdíl je ve velikosti prostoru „klíčů“.

Příklad: AES256 s klíčem 0 je kód. AES256 (bez dalších upřesnění) je šifra.

Base64 je kód. Neslouží k utajení informací, prostor „klíčů“ má velikost asi tak 1 a nemá to žádné z obvyklých vlastností, které se u šifer považují za výhodné (například podobnost náhodným datům atd. atp.).

23.12.2017 12:57 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Keď sa zamyslím nad tvojimi výrokmi, tak čítam že šifra s kľúčom o dĺžke nula je kód. A ďalej čítam že BASE64 má nenulovú dĺžku, pričom nie je šifra. Tvoje vyjadrenia sú jednoznačné. Je na nich krásne vidno ako si priohýbaš definície vo svoj prospech, a nevšímaš si že si stále protirečíš.
26.12.2017 09:10 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
A ďalej čítam že BASE64 má nenulovú dĺžku, pričom nie je šifra.

Tenhle tvůj výrok je fakt zoufalá kravina. Nic takového jsem nikde nenapsal. Ty sis prostě vymyslel náhodný žvást, který mi tu podsouváš. O nulové délce něčeho (ať už přirození, klíče nebo hůlky) jsem nic nepsal. Takže si to zkus přečíst ještě jednou. To někdy pomůže, pokud jde o porozumění psanému textu, a je to lepší než vymýšlet cosi, co v mém textu vůbec nebylo. ;-)

Tvé fantazie o tom, že Base64 je šifra, jsou jakýsi chabý pokus o trolling nebo slovíčkaření, jehož smysl mi uniká. Mezi kódem a šifrou je opravdu hodně velký rozdíl, jak už tu správně zmínili jiní. Podle tvé ideologie je ASCII nebo UTF8 taky šifra, protože za šifru považuješ nejspíš cokoliv. (Přitom mezi ASCII a Base64 není vůbec žádný rozdíl, pokud jde o „zabezpečení“ a prostor klíčů.)

26.12.2017 17:17 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Čiže napríklad toto: prostor „klíčů“ má velikost asi tak 1 si akože nepísal. Odporuješ si ešte viac.
26.12.2017 17:29 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH

Když má prostor klíčů velikost 1, není to šifra. Potvrzuji a podtrhuji sám sebe ještě jednou, zatímco ty sám sebe dál ztrapňuješ nekonzistentními nesmysly. :-)

Není problém nepochopit napoprvé psaný text. Problém je nepochopit ho ani napodruhé, což jsi právě předvedl, a pořád si nepřiznat chybu. Vypadá to, že se zase snažíš (a zdaleka to není v místních diskusích poprvé) bezdůvodně trollovat, slovíčkařit a opakovat do omrzení nesmysly.

Tvrzení, že Base64 je šifra, by mohl být skoro i vtip — jenže ono se zdá, že to myslíš fakt vážně. :-D

27.12.2017 16:28 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Čiže keď je kľúč nenulový, tak je to šifra. Ale len v prípade že sa ti to hodí. V opačnom prípade je to kód. Normálne by som si myslel že je to tvoje tvrdenie vtip, ale začínam si myslieť že to myslíš vážne.
27.12.2017 16:53 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Normálně bych si myslel, že vaše komentáře jsou vtip, ale obávám se, že je myslíte vážně.

Pro začátek byste si mohl porovnat slovo „klíč“ a sousloví „velikost prostoru klíčů“ a přemýšlet o tom, zda je to to samé.
28.12.2017 11:07 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Mám tomu rozumieť tak, že sa mýlim keďže existuje nenulový kľúč ktorý má nulovú dĺžku? Neučil som sa z učebníc VUML aby mi takéto blbosti dávali zmysel.
28.12.2017 11:48 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Mám tomu rozumieť tak, že sa mýlim keďže existuje nenulový kľúč ktorý má nulovú dĺžku?
Ne, tak tomu rozumět nemáte. Nic takového neplyne z žádného komentáře, který tady byl napsán.
Neučil som sa z učebníc VUML aby mi takéto blbosti dávali zmysel.
Blbosti tady zatím vymýšlíte jen vy – přečtete si nějaký komentář, vůbec ho nepochopíte, vezmete z nějak některá slova, vhodíte do osudí s dalšími slovy, zamícháte a vypadne z toho vaše „odpověď“.

Jak už jsem vám radil, pro začátek zkuste přemýšlet o tom, zda „klíč“ a „velikost prostoru klíčů“ je opravdu to samé. Až dojdete k tomu, že není, budete na dobré cestě pochopit, o čem se tu diskutuje.
28.12.2017 17:41 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH

Aha. Takže jsi nepochopil rozdíl mezi nulovým klíčem (nebo obecně libovolným předem daným klíčem, třeba se samými jedničkami) a klíčem nulové délky. Jinými slovy, nepochopil jsi psaný text. Už zase. Zkus si to přečíst ještě jednou, tentokrát asi počtvrté.

Mimochodem, tvé tvrzení, že kráva je pes, považuji za nepravdivé. To uvádím jen pro ilustraci, jak to vypadá, když si někdo vymýšlí bláboly, které jsi netvrdil, a předhazuje ti je, jak se mu to hodí. Tohle je tvůj styl "debaty".)

  • Base64 není šifra.
  • AES256 je šifra.
  • AES256 se známým klíčem 0 není šifra.
  • AES256 se známým klíčem 115792089237316195423570985008687907853269984665640564039457584007913129639935 ("samé jedničky") není šifra.

Dokážeš bez překrucování interpretovat výše uvedené jednoduché věty, nebo to mám ještě nějak podrobněji vysvětlit? ;-)

29.12.2017 13:03 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Znova som si to prečítal, a znova vidím ako sa mi tu snažíš aj ty tvrdiť že nenulový kľúč môže mať nulovú dĺžku.

Ešte by si mohol nasadnúť do stroja času a vysvetliť napríklad Cézarovi že jeho šifra nebola šifra ale jednalo sa o kód. Historici sa ti poďakujú keďže tým vysvetlíš ako veľmi sa divili.
29.12.2017 14:46 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH

Kde přesně tvrdím, že "nenulový klíč může mít nulovou délku"? Prosím citaci. Opravdu už to s těmi výmysly přeháníš. Nikde jsem nic takového netvrdil.

Starověké pokusy o šifry jsou v tomto kontextu zcela off-topic, takže na ně nebudu nijak reagovat.

Base64 není šifra. Účelem Base64 není (a nikdy nebylo) utajení dat. Je na tom snad něco nepochopitelného?

30.12.2017 10:28 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Začal si s tým tu, a pokračuješ s tým aj naďalej. Tvrdíš že keď to má nulový kľúč, tak je to kód. Ale keď to má nenulový kľúč, tak je to šifra. A špeciálne o base64 tvrdíš že je to má nenulový kľúč ktorý určuje že je to šifra, čiže sám sebe odporuješ.
30.12.2017 11:01 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Ale keď to má nenulový kľúč, tak je to šifra.
To tady nikdo netvrdil, kromě vás. Naopak např. v komentáři 33 Andrej výslovně uvádí AES256 s nenulovým klíčem („samé jedničky“), a tvrdí, že to není šifra.
A špeciálne o base64 tvrdíš že je to má nenulový kľúč
Ne, to nikdo nikde nepsal, to je jen další váš výmysl.
nenulový kľúč ktorý určuje že je to šifra
A další váš výmysl.

Ale možná to bude jenom tím, že jste stále ještě nepochopil rozdíl mezi pojmy „klíč“ a „prostor klíčů“. Konkrétní PIN k vaší platební kartě, třeba 1234, je „klíč“. Když někdo ten klíč (PIN) zná, může s tou kartou platit nebo s ní vybírat peníze. Ten váš „nulový klíč“ by byl PIN 0000. „Prostor klíčů“ je seznam všech možných klíčů – takže když vím, že platební karta má čtyřmístný dekadický PIN, vím, že prostor klíčů je 0000, 0001, 0002, … , 9999, tedy celkem 10 000 možných klíčů – velikost prostoru klíčů (PINů) platební karty je tedy 10 000. Už to chápete?
31.12.2017 09:22 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Andrej tvrdil že keď to má nenulový kľúč, tak je to šifra. A keď to má nulový kľúč, tak je to kód. Pričom base64 má podľa neho nenulový kľúč ale nie je to šifra. Nič z toho som si nevymyslel, sú to jeho veľavravné tvrdenia.
31.12.2017 11:05 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Andrej tvrdil že keď to má nenulový kľúč, tak je to šifra. A keď to má nulový kľúč, tak je to kód
Ne, netvrdil. Tahle nesmyslná tvrzení se poprvé objevují ve vašem komentáři, my vám je pořád vyvracíme a vy je pořád opakujete.
Pričom base64 má podľa neho nenulový kľúč ale nie je to šifra.
Ne, to také nikde netvrdil. To akorát vy pořád nechápete rozdíl mezi „klíčem“ a prostorem klíčů“. BASE64 žádný klíč nemá, takže by se s přimhouřením očí dalo tvrdit, že prostor klíčů má velikost 1. Což také napsal Andrej.
Nič z toho som si nevymyslel, sú to jeho veľavravné tvrdenia.
To jste si vymyslel. Kdyby to napsal v diskusi někdo jiný, můžete na příslušný komentář odkázat, můžete jej citovat. Problém je v tom, že jste hlupák a zaměňujete konkrétní klíč a prostor klíčů, přestože jste už byl mnohokrát upozorněn, že to není to samé. Vy se ale stále tváříte, že jste tuto informaci nezaznamenal, a stále dokola opakujete ty svoje nesmysly.
1.1.2018 15:27 Peter Golis | skóre: 64 | blog: Bežné záležitosti | Bratislava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Čiže ak ťa správne chápem, Andřej tvrdil že nenulový priestor kľúčov má nulovú veľkosť keď to môže použiť ako dôkaz jeho pravosti.

Ďakujem, to mi stačí. Pridám si to k múdram miestnym trolov, medzi ktoré patrí napríklad perla o bezpečnosti kde odborníci tvrdili že nezáleží či podpis patrí druhej strane, ale dôležité je že bol podpísaný certifikačnou autoritou.
1.1.2018 15:55 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Ne, opět to chápete špatně.

Je od vás hezké, že jako největší místní troll sbíráte i moudra ostatních trollů, kteří vám ovšem nesahají ani po kolena.
2.1.2018 03:10 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH

Příspěvek, na který odkazuješ, netvrdí ani náhodou, ani v náznaku a ani omylem nesmysly, které tady omíláš. Zase jsi nepochopil psaný text. Zkus si ten příspěvek přečíst třeba desetkrát — i když teď už pochybuju, že to pomůže.

Ani po desáté iteraci jsi nevzal v potaz, že velikost prostoru klíčů (vyplývající například z délky klíče) a hodnota konkrétního jednoho klíče (například 0, tedy 256 nulových bitů v případě AES256) jsou dvě naprosto odlišné záležitosti, které se nedají míchat dohromady.

Zkus se pro začátek naučit jednoduché tvrzení: Base64 není šifra. To je opravdu všechno, co je třeba vědět, zejména pokud někdo není schopen rozlišovat mezi délkou klíče, hodnotou klíče a velikostí prostoru klíčů.

21.12.2017 09:09 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Odpovědět | | Sbalit | Link | Blokovat | Admin
Když tak na to koukám, tak ty spíš asi potřebuješ utilitu xxd
user@stroj:~$ echo tajny-text | xxd -p
74616a6e792d746578740a
user@stroj:~$ echo 74616a6e792d746578740a | xxd -r -p
tajny-text
Jinými slovy, nejde ti o šifru jako takovou, ale o utilitu, co ti udělá z libovolného (třebas i binárního) řetězce řetězec textový, jaký se pak dá obrábět přes další utility. Alespoň tedy já to tak v bashových skriptech dělám.

Jestli se pak takový řetězec prožene přes base64, openssl, nebo něco jiného, je už pak naprostý šumák.
26.12.2017 10:13 Michal
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH
Odpovědět | | Sbalit | Link | Blokovat | Admin
Nikdo krome jendy nepochopil zadani (nebo si tam domysleji neco, co tam vubec neni napsano)... a pritom je specifikovane naprosto exaktne.

Hleda se f a f' takove, ze

f(tajny-text) -> quY93vna5EMPb3q9Puur (jen a pouze quY93vna5EMPb3q9Puur tzn. ne quY93vna5EMPb3q9Puus ani quY94vna5EMPb3q9Puur ani nic jineho) a f'(quY93vna5EMPb3q9Puur) -> tajny-text

O vystupu pri jinych vstupech nebylo receno nic (je nedefinovan).

26.12.2017 17:31 Andrej | skóre: 51 | blog: Republic of Mordor
Rozbalit Rozbalit vše Re: Hledám funkci pro BASH

Protože onu zjevnou a zcela správnou interpretaci zadání už předvedl Jenda, ostatní se pochopitelně pokusili příslušné zadání nějak domyslet a dodefinovat, aby nebylo tak absurdně triviální. :-) V tom nevidím nic špatného.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.