Cryporange - criptografador de mensagens
Publicado por Slackjeff (última atualização em 11/07/2018)
[ Hits: 1.431 ]
Homepage: https://slackjeff.com.br
Acid Cryptography. Maiores informações:
https://notabug.org/jeffersonrocha/CRYPORANGE/src/master/README.md
#!/usr/bin/env sh #============HEADER=================================================| #AUTHOR # Jefferson Rocha <lrcjefferson@gmail.com> # #PROGRAM # CRYPORANGE - Acid Cryptography # #DESCRIPTION # # #TEST-ON # bash, zsh, ksh [OK] # #CHANGELOG # V2.0 (Jefferson Rocha) # - add variable RANDOM 'uhul', for more randomness. # - add 2 functions, shuffles and deshuffles for to change # some letters. # - base32 is also being used, with base64. #===================================================================| #=====VARS===========================| version="2.0" archive="/tmp/.archive${RANDOM}" uhul="$RANDOM" #=Colors bold=$(tput bold) back_red=$(tput setab 1) back_green=$(tput setab 2) back_blue=$(tput setab 4) back_cyan=$(tput setab 6) fore_red=$(tput setaf 1) fore_green=$(tput setaf 2) end_color=$(tput sgr0) #====================================| #=====TESTS==========================| for conference in "base64" "base32" "tr" "rev"; do # Exist list? no bye! if ! type -p "$conference" >/dev/null 2>&1; then printf '%b' "${bold}${fore_red}NEED '${conference}' TO CONTINUE${end_color}\n" exit 1 fi done #====================================| #=====FUNCTIONS======================| remove(){ if [ -e "$archive" ];then rm "$archive" >/dev/null 2>&1 fi } _USAGE(){ cat <<END | less CRYPORANGE $version User Manual. What is cryporange? Cryporange uses simple, more functional encryption! As a base it has the cipher of cesar, reverse and base64. United all on one base, that's cryptorange! good fun! ENCRYPT To encrypt a message, you must select option (1), after you write your message, for end, press <ENTER> then CTRL + D for encrypt your message. DECRYPT To decrypt a message, you must select option (2) menu. After this you paste your message encrypted, press <ENTER> then CTRL + D for decrypt. AUTHOR 2018 Jefferson Rocha <lrcjefferson@gmail.com> BUGS Send a message to lrcjefferson at gmail dot com (RETURN? PRESS Q) END } shuffles(){ sed \ "s/ /++!@/g; s/,/$uhul/g; s/a/t-!/g; s/e/$-/g; s/i/__/g; s/r/I@/g" } deshuffles(){ sed \ "s/++!@/ /g; s/$uhul/,/g; s/t-!/a/g; s/$-/e/g; s/__/i/g; s/I@/r/g" } _crypt(){ printf '%b' "+-+-+-+- ENCRYPT MODE -+-+-+-+\n" printf '%b\n' "${bold}${fore_red}Enter TEXT. (NEW LINE and CTRL+D for CRYPT MESSAGE).${end_color}" # Print stdout. cat > "$archive" # Write a text [ ! -e "$archive" ] && exit 0 # Archive no exit? bye. cat "$archive" | \ tr '[a-z]' '[x-za-w]' | \ shuffles | \ base32 | \ rev | \ base64 remove # Remove .archive in /tmp } _decrypt(){ printf '%b' "+-+-+-+- DECRYPT MODE -+-+-+-+\n" printf '%b\n' "${bold}${fore_red}PASTE TEXT: (NEW LINE and CTRL+D for DECRYPT MESSAGE).${end_color}" cat > "$archive" [ ! -e "$archive" ] && exit 0 # Archive no exist? BYE. cat "$archive" | \ base64 -d | \ rev | \ base32 -d | \ deshuffles | \ tr '[x-za-w]' '[a-z]' remove # Remove .archive in /tmp } #====================================| # MAIN remove # Remove .archive in /tmp clear # <3 Clean cat << RANGER ${bold}${fore_green} ____ ____ _ _ ___ ____ ____ ____ _ _ ____ ____ | |__/ \_/ |__] | | |__/ |__| |\ | | __ |__ |___ | \ | | |__| | \ | | | \| |__] |___ Acid Cryptography V${version} ${back_red} ${back_green} ${back_blue} ${back_cyan} ${end_color} ____________________________________________________ RANGER PS3=$'\n> ' select menu in "Encrypt" "Decrypt" "Usage" "Exit"; do if [ "$REPLY" = "1" ]; then _crypt # Call Func elif [ "$REPLY" = "2" ]; then _decrypt # Call Func elif [ "$REPLY" = "3" ]; then _USAGE # Call Func elif [ "$REPLY" = "4" ]; then exit 0 # Bye else printf '%b' "\t${bold}${fore_red}INVALID OPTION!!!!${end_color}\n" fi done
Filtro para importação de extrato do Banco do Brasil para Kmymoney
Prova LPI em shell script - com contador de acertos
Gerenciador de Conexões terminal server com Mysql
Script para informar o IP válido
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
SysAdmin ou DevOps: Qual curso inicial pra essa área? (0)
Melhores Práticas de Nomenclatura: Pastas, Arquivos e Código (3)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta