Δημιουργία τυχαίων κωδικών, συνθηματικών σε τερματικό του Android (Μέρος 3)

Στο σημερινό μάθημα θα δούμε πως μπορούμε να επαναλάβουμε την διαδικασία δημιουργία τυχαίων κωδικών, συνθηματικών αλλά αυτή την φορά σε τερματικό του Android.

Εισαγωγή

Θεωρώ ότι έχετε ήδη μελετήσει το πρώτο και το δεύτερο μάθημα, μιας και θα δώσω οδηγίες μόνο για τα σημεία που δεν έχουμε μιλήσει στα προηγούμενα μαθήματα.

Για να γράψουμε τον κώδικα που είδαμε στο προηγούμενο μάθημα θα χρειαστούμε κάποιο φυσικό πληκτρολόγιο συνδεδεμένο με το Android μας (ασύρματο ή ενσύρματο π.χ. με θήκη πληκτρολογίου για tablet). Ή να χρησιμοποιήσετε το Hackers Keyboard, η οποία δίνει ότι και ένα κανονικό πληκτρολόγιο (ctrl, alt, function keys κλπ).

Εναλλακτικά μπορείτε να γράψετε τον κώδικα στον υπολογιστή και να το στείλετε στο android σας. Η αν βαριέστε να γράφετε μπορείτε να πάρετε τον κώδικα έτοιμο από το αποθετήριο του Cerebrux (όπως θα δείτε παρακάτω) και το τρέξετε η και να το τροποποιήσετε κατά το δοκούν.

Επίσης, για να το τρέξετε θα χρειαστεί να κάνετε εγκατάσταση από το Play Store ένα τερματικό περιβάλλον. Προτείνω το Termux το οποίο και έχω χρησιμοποιήσει στις δοκιμές μου και δουλεύει.:

Εγκατάσταση και χρήση του Termux

Το Termux είναι ένα τερματικό περιβάλλον που «φέρνει» στην συσκευή Android σχεδόν όλες τις εντολές που έχει ήδη συνηθίσει ένας χρήστης Linux.

Αφού το κάνετε εγκατάσταση, ανοίξτε το και δείτε το μήνυμα που βγάζει για πρώτη φορά. Λέει ότι μπορείτε να ενημερώσετε τις πηγές λογισμικού Linux με την εντολή apt update. Στην πραγματικότητα λοιπόν, το termux δημιουργεί ένα περιβάλλον εντολών Linux στον υποφάκελλο της εφαρμογής του και εκμεταλλεύεται το γεγονός ότι το Android βασίζεται αλλά και χρησιμοποιεί Linux πυρήνα. Μην ανησυχείτε λοιπόν με τις παρακάτω εντολές, δεν πρόκειται να προκαλέσετε πρόβλημα στο κινητό σας.

Τι περιμένετε λοιπόν, πάμε να το τρέξουμε:

apt update

ωραία, πάμε να κάνουμε ενημέρωση των λογισμικών του Linux :

apt upgrade

αν υπάρχουν ενημερώσεις θα σας ρωτήσει αν θέλετε να τις εγκαταστήσει οπότε πατήστε enter

Ας κάνουμε εγκατάσταση και μερικά λογισμικά που θα χρειαστούμε:

apt install htop

Το αποτέλεσμα θα μοιάζει με την παρακάτω εικόνα:

dimiourgia-tuxaion-kodikon-termatiko-android-dev-random-install

Ωραία, τώρα μπορείτε να τρέξετε το htop όπως το έχετε δει και στην Linux διανομή σας:

htop

και πατήστε enter

dimiourgia-tuxaion-kodikon-termatiko-android-dev-random-htop

Όπως βλέπετε, πρόκειται για ένα κινητό 4 πύρινο με 3 GB ram. Συγκεκριμένα είναι το Meizu MX4 Pro. Μπορείτε να κλείσετε την εφαρμογή htop πατώντας q στο πληκτρολόγιο.

Αν κρατήσετε πατημένο το δάχτυλό σας στο τερματικό, θα εμφανιστεί το μενού το termux και εκεί μπορείτε να επιλέξετε more και έπειτα Help για να δείτε τον οδηγό χρήσης του termux.

Για κειμενογράφο τερματικού, όπως γράφει ο οδηγός του termux, μπορείτε να κάνετε εγκατάσταση το nano, vim κλπ. π.χ.:

apt install nano

Τώρα, αν έχετε υπομονή μπορείτε να διαβάσετε τα προηγούμενα μαθήματα και να πειραματηστείτε, να γράψετε και γενικά να δοκιμάσετε τις εντολές του τερματικού.

Που είναι ο κώδικας;

Αν όμως… βαριέστε να γράφετε, έχω ετοιμάσει τον κώδικα και μπορείτε να το κατεβάσετε από το github. Για να σας «ταλαιπωρήσω» όμως και να σας κάνω να χρησιμοποιείστε το Termux θα κάνουμε τα εξής:

  • θα κάνουμε εγκατάσταση το git
  • θα κατεβάσουμε τον κώδικα
  • θα μπούμε στον φάκελο που κατέβηκε
  • θα προβάλουμε τον κώδικα
  • και τέλος, θα τρέξουμε το πρόγραμματάκι

Πάμε λοιπόν βήμα βήμα

Εγκατάσταση Git στο Android Termux

Ας κάνουμε εγκατάσταση το git :

apt install git

Ωραία μόλις γίνει η εγκατάσταση, αντιγράψτε την παρακάτω εντολή με τον σύνδεσμο (όσοι διαβάζετε το άρθρο από το κινητό) και κάντε το επικόλληση στο termux η πληκτρολογήστε την και πατήστε enter:

git clone https://github.com/CerebruxCode/kodrandroid.git

Η παραπάνω εντολή «κλονοποιεί» τον κώδικα του kodrandroid που βρήσκεται στο github μέσα στον φάκελο kodrandroid.  Έπειτα μπείτε στον φάκελο:

cd kodrandroid

και δείτε τα περιεχόμενά του

ls

dimiourgia-tuxaion-kodikon-termatiko-android-dev-random-git

Τώρα μπορείτε να προβάλετε τον κώδικα του αρχείου με την εντολή cat

cat kodrandroid

Όπως θα δείτε, ο κώδικας είναι ελαφρώς τροποποιημένος, αλλά όσοι μελετήσατε το προηγούμενο μάθημα θα καταλάβετε τι κάνει :


#!/system/bin/sh
# Προγραμματάκι που παράγει τυχαίους κωδικούς σε
# τρεματικό με Android συσκευή με χρήση της /dev/urandom
# Πηγή: https://cerebrux.net/2016/05/dimiourgia-tuxaion-kodikon-termatiko-android-dev-random/
# -------------cerebrux.net--------------------

#εμφάνισε ένα καλωσόρισμα
echo ""
echo "####################"
echo "# Καλωσήρθατε στο  #"
echo "#   Kodrandroid    #"
echo "####################"

# Περίμενε 1 δευτερόλεπτο
sleep 1

# άφησε 2 κενές σειρές
echo ""
echo ""
for apotelesma in `seq 1 5`
    # Προβολή των 10 ψηφίων της /dev/urandom
    # από 1 έως 5 φορές
    do
        # δώσε μου μόνο τους χαρακτήρες όχι σύμβολα
        strings /dev/urandom |\
        # αλλά μόνο ότι υπάρχει στις πρώτες 5 γραμμές
        head -n 5 |\
        # αφαίρεσε ότι κενό υπάρχει μεταξύ χαρακτήρων
        tr -d '[:blank:]' |\
        # αφαίρεσε τυχών νέες γραμμές
        tr -d '\n'|\
        # το μέγεθος να είναι 10 χαρακτήρες
        head -c 10
        # αφού μου δώσεις νέο κωδικό 10 χαρακτήρων ξεκίνα την διαδικασία σε νέα γραμμή
        echo ""
    done

# άφησε 2 κενές σειρές
echo ""
echo ""
echo "----------------"
echo "- ολοκληρώθηκε -"
echo "----------------"
echo ""

Τώρα μπορείτε να το τρέξετε με την εντολή bash για να δηλώσετε ότι θέλετε να γίνει η χρήση του κελύφους bash :

bash kodrandroid

ή να το τρέξετε απευθείας:

./kodrandroid

 

dimiourgia-tuxaion-kodikon-termatiko-android-dev-random

Όπως βλέπετε μια χαρά έτρεξε το προγραμματάκι μας. Μπορεί να παρατηρήστε στον κώδικα μια διαφορά στην διαδρομή του κελύφους. Ενώ δηλαδή στις Linux διανομές ο διαδρομή για το κέλυφος sh είναι συνήθως στο /bin/sh η Google λόγο της αρχιτεκτονικής του Android, το έχει στο /system/bin/sh. Περι ορέξεως… 

Ο κώδικας είναι διαθέσιμος στο αποθετήριο του Cerebrux

Επίλογος

Με το μάθημα αυτό θέλαμε να επεκτείνουμε την δραστηριότητα μας και στο Android για να δείξουμε και τις Linux καταβολές του λειτουργικού. Φυσικά μην περιμένετε να μπορούν να εκτελεστούν όλες οι εντολές που θα δοκιμάσετε μιας και πρώτον, δεν έχετε πρόσβαση root στην συσκευή σας και από την άλλη και να έχετε η Google έχει αφαιρέσει πολλά από τα στοιχεία που θα χαρακτήριζαν το Android έναν κλώνο μιας διανομής Linux.

Απορίες, παρατηρήσεις, ιδέες... Ελεύθερα ! Πες την άποψή σου... έστω και Ανώνυμα:

Εισάγετε τα παρακάτω στοιχεία ή επιλέξτε ένα εικονίδιο για να συνδεθείτε:

Λογότυπο WordPress.com

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό WordPress.com. Αποσύνδεση / Αλλαγή )

Φωτογραφία Twitter

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Twitter. Αποσύνδεση / Αλλαγή )

Φωτογραφία Facebook

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Facebook. Αποσύνδεση / Αλλαγή )

Φωτογραφία Google+

Σχολιάζετε χρησιμοποιώντας τον λογαριασμό Google+. Αποσύνδεση / Αλλαγή )

Σύνδεση με %s