OpenSSH Key für GIT unter Windows erzeugen

Um ein Public und Private Keypaar zu erzeugen kann unter Windows der Putty Key Generator verwendet werden.

Bei „Parameters“ „Types of key to generate:“ “SSH-2 RSA” wählen.
Zum Erzeugen wird einfach auf „Generate“ geklickt und anschließend die Maus über die freie Fläche bewegt.

keyGen1

Das so erzeugte Schlüsselpaar muss für die Verwendung mit GIT als OpenSSH Key gespeichert werden und im Benutzerordner im Ordner „.ssh“ gespeichert werden. Also z.B. unter  folgendem Pfad abgelegt werden:

C:\Users\Benutzer\.ssh

Dabei muss der Public Key aus dem Feld kopiert werden und in eine Datei mit dem Namen „id_rsa.pub“gespeichert werden. Diese Datei muss dann auch serverseitig hinterlegt werden.

Der PrivateKey wird als OpenSSH Key exportiert („Conversions“ – „Export OpenSSH key“), dieser wird unter dem Namen „id_rsa“ ebenfalls im Ordner „.ssh“ gespeichert.

keyGen3

 

Bekannte Probleme:

Der Server verlangt ein Passwort. Lösungsansätze:

  • Key als OpenSSH Key gespeichert?
  • Beide Keys im Ordner “.shh”?
  • Public Key hat den Namen “id_rsa.pub”?
  • Private Key hat den Namen “id_rsa”?

Parameterlisten variabler Länge in Java

In einigen Fällen ist eine Methode mit einer variablen Länge an Parametern notwendig. In Java werden an diese Parameter “” angehängt, wie beispielsweise “Object… args“. Das folgende Beispiel soll diese Methode verdeutlichen.

 
public class HelloWorld {
  public static void main(String[] args) {
    sayHelloTo("Person1", "Person2", "Person3", "Person4", "Person5");
  }
 
  public static void sayHelloTo(String... name){
    System.out.print("Hello ");
    int length = name.length-1;
    for (int i = 0; i <= length; i++) {
      if(i != length)
        System.out.print(name[i] +", ");
      else
        System.out.print(name[i]);
    }
  }
}

Ausgabe: Hello Person1, Person2, Person3, Person4, Person5

Mit SQLCipher in Android eine SQLiteDatenbank verschlüsseln

Mit SQLCipher lässt sich eine komplette Datenbank verschlüsseln.

Der SQLCipher Quellcode steht bei GitHub zu Verfügung.

Die zur Verwendung nötigen JAR´s können auch direkt runtergeladen werden (Download).

Um SQLCipher in Android zu verwenden, sind folgende drei Schritte in einem existierenden Android-Projekt notwendig:

  • Alle Datei aus dem Ordner lib (.jar und .os Dateien) müssen dem Projekt hinzugefügt werden (Download).
  • Den Import
    android.database.sqlite.*

    durch den Import

    net.sqlcipher.database.*

    in den einzelnen Klassen ersetzen.

  • Die Datenbank mit Verschlüsselung-Phrase in der onCreate-Methode einer Activitiy initialisieren.
    SQLiteDatabase.loadLibs(this); //db-libs initialisieren
    SQLiteOpenHelper.getWritableDatabase("MEINPASSWORTZURVERSCHLUESSELUNG");

Bekannte Probleme:

Problem: Beim Aufruf der Datenbank kommt es zu folgender Exception:

net.sqlcipher.database.SQLiteException: not an error
 
at net.sqlcipher.database.SQLiteDatabase.dbopen(Native Method)
 
…

Lösung: Die Datei icudt46l.zip in den assets-Ordner einbinden.

Weiter Infos siehe hier.

Vaadin 7 – Maven installation

Einstellungen:

  • Eclipse Juno
  • Eclipse-Maven-Plugin m2e
  • Tomcat 7

Zuerst erstellen wir ein neues Maven-Projekt. Als Archetype wählen wir die “vaadin-archetype-application”. Sollte diese nicht vorhanden sein, erstellen wir ein neues unter mit “Add Archetype”. Dabei geben wir folgende Informationen ein:

<dependency>
<groupId>com.vaadin</groupId>
<artifactId>vaadin-archetype-application</artifactId>
<version>7.0.3</version>
</dependency>

Um das Projekt zu starten wählen wir “run as –> Maven build” und geben als Goals folgendes ein:tomcat:run

beim ersten Start werden alle benötigten Bibliotheken von Maven geladen und der Tomcat server gestartet.