Cryptage XOR en Java (version 2)

Le cryptage XOR (aussi dit OU Exclusif) reste une façon simple de crypter très rapidement une chaine de caractères.
Ma première version, consistait à faire un OU Exclusif entre chacun des caractères de la chaine et une clé d’un caractère. Cette fois-ci, la clef est une chaine de plusieurs caractères. Le cryptage est rotatif, c’est à dire qu’une même lettre n’est pas codé de la même manière.

L’avantage de cette nouvelle version est de crypter bien mieux un texte, le rendant bien moins facile à déchiffrer. Les temps de traitement sont toujours aussi rapide. La même fonction permet toujours de crypter et décrypter la chaine.
Le seul inconvénient est que si la chaine cryptée est corrompue par ajout ou suppression d’un caractère, toute la chaine en aval de celui-ci ne sera pas décryptée. En revanche, un remplacement d’un caractère par un autre se traduira seulement par un seul caractère corrompu au déchiffrage.

public String crypterXOR(String chaine, String clef)
{
    String chaineCryptee = "";
    for(int i = 0, j = 0; i < chaine.length(); i++)
    {
        chaineCryptee += (char)((int)chaine.charAt(i) ^ (int)clef.charAt(j));
        j++;
        if(j >= clef.length()) j = 0;
    }
    return chaineCryptee;
}

Interrupteur à diode

Voici un petit schéma électronique qui peut se révéler assez utile, surtout dans les hautes fréquences, c’est un interrupteur à diode pour les signaux alternatif.

Le principe est assez simple, on polarise la diode en sens direct pour pouvoir laisser passer le signal et en sens indirect (voir rien si l’amplitude du signal est inférieure au seuil de la diode) pour le bloquer. Les condensateurs et les inductances sont là pour empêcher le mélange du signal avec la tension de polarisation. La résistance sert à limiter le courant de polarisation dans la diode.

Les fréquences max du signal ne dépendra que des caractéristiques de la diode.

Interrupteur à diode

Interrupteur à diode

 

IDE pour le Raspberry Pi

Il est parfois plus simple de programmer sur son PC plutôt que directement sur le Rasberry Pi. D’autant plus si ce dernier n’est pas relié à un écran.
Dans ce contexte, il est préférable d’utiliser son PC avec un IDE paramétré avec une chaîne de compilation croisée pour le processeur du RPi. On peut, bien sûr, sortir la grosse artillerie avec des logiciels comme Code::Blocks ou Eclipse par exemple. Mais ayant un PC assez lent, j’ai préféré créer un outils léger et rapide, qui consomme bien moins de ressource.

C’est cet outil que je vous propose. Il permet d’éditer des codes en langage C avec des fonctionnalités communes aux IDE, comme la coloration syntaxique ou l’ouverture de plusieurs fichiers dans des onglets, par exemple.

Un bouton de compilation permet de créer le fichier exécutable par le RPi. Il suffira donc de le copier dessus pour tester.

Vue normale pendant d’édition sur RPi IDE

Mon IDE est écrit en java et fonctionne entièrement sur Linux.
Il fonctionne aussi sur Windows, mais ne pourra pas compiler le code. Toutefois, le logiciel pourra toujours servir d’éditeur de code.
Le compilateur actuel est gcc-linaro-arm-linux-gnueabihf-raspbian disponible ici.
Aucune installation n’est nécessaire.

Lien de téléchargement : RPi IDE V1.tar.gz

Si vous avez des suggestions ou des remarques, n’hésitez pas à le dire pour que je puisse améliorer le logiciel.

Ajouter un utilisateur et utiliser la commande « sudo » avec le Raspberry Pi

Après avoir installé une des distributions Linux sur votre Raspberry Pi (ou même sur un système classique), peut-être voulez-vous créer votre propre utilisateur, différent de celui par défaut. La suite de cet article montre comment s’y prendre simplement.
De plus, si vous êtes un utilisateur d’Ubuntu et de ses dérivés, ou que vous voulez simplifier vos futures tâches, la commande « sudo » peut être intéressante et j’en décrirai l’installation.

Les commandes ci-dessous fonctionnent sur Debian et ses dérivés, et sont facilement adaptables pour les autres. Sur le Raspberry Pi, je l’ai testé avec Raspbian.

Tout d’abord, il est préférable d’être en mode administrateur si ce n’est pas le cas, ce qui peut se faire avec la commande suivante qui demandera éventuellement le mot de passe.

su -

On ajoute le nouvel utilisateur. La commande demandera des informations complémentaires que vous pouvez renseigner.

adduser <nouvel utilisateur>

On installe le programme sudo.

apt-get update
apt-get install sudo

Pour éviter un bug dans certaines versions on va modifier le fichier hosts dans /etc/.

nano /etc/hosts

Il faut transformer la ligne suivante :

127.0.0.1   localhost

En :

127.0.0.1   localhost   <nom de la machine>

Puis, quitter en sauvegardant avec Ctrl + x et en répondant oui, tout en laissant le fichier à la même adresse.

Il reste à ajouter les utilisateurs qui pourront utiliser la commande « sudo » dans le groupe du même nom :

adduser <utilisateur à ajouter> sudo

Et enfin, on redémarrera le système avec un :

reboot

On peut maintenant se connecter avec le nouvel utilisateur et tester la commande sudo avec une mise à jour, par exemple.

sudo apt-get update
sudo apt-get upgrade

D’autres tutos/articles à suivre.