| Verschlüsselung im HIT-ProtokollAllgemein
		Im Rahmen der Anforderungen an die HIT/ZID zentrale Datenbank und Ihre 
Benutzer bezüglich Informationssicherheit begründet durch die DSGVO und die 
Zertifizierung nach BSI-Standard ist es unumgänglich, verschiedene Maßnahmen 
umzusetzen. Insbesondere ist die Kommunikation zwischen den Clients und dem 
HIT-Server mittels HIT-Protokoll unbedingt verschlüsselt durchzuführen. Die Verschlüsselung bei der Übertragung von Daten durch Programme liegt in 
der Verantwortung des Nutzer. Die zentrale Datenbank HIT/ZID bietet verschiedene 
Mechanismen zur Unterstützung an. Mittelfristig wird die Nutzung des unverschlüsselten 
HIT-Protokolls unterbunden werden. Noch steht kein konkreter Zeitpunkt fest, 
aber -falls noch nicht erfolgt- stellen Sie schon jetzt die Übertragung auf sichere 
Verfahren um! Historie
		
			| Datum | Details |  
			| 20.03.2024 | Es gibt nun auch eine Demo, die eine verschlüsselten 
			Kommunikation mit einem HitServer demonstriert - mehr dazu in der
			Einleitung für Java-Programmierer |  
			| 22.02.2024 | Serverseitige zusätzliche Verwendung einer externen Crypto-Bibliothek (Bouncy 
			Castle) für die symmetrische Datenverschlüsselung. 
			Es können damit seitens Clients sowohl weitere Cipher als auch Blockmodi verwendet 
			werden. Der Parameter ENC_SYMbeim LOGON wurde dafür 
			modifiziert und nimmt nun eine sogenannte Transformationsvorschrift 
			im Format"algorithm/mode/padding"an. Der 
			Parameter ist weiterhin optional und akzeptiert weiterhin die 
			bisherigen numerischen Werte (man erhält beim LOGON einen 
			entsprechenden Hinweis). Mehr unter Details. Im Rahmen der o.g. Erweiterung gab es eine Umstellung und 
			Zusammenfassung der Crypto-Routinen in de.hi_tier.hitupros. 
			Die Routinen können aber nach wie vor ohne die externe Bibliothek 
			verwendet werden, nur eben nicht im erweiterten Umfang (Details). Die bisher genutzen 
			HitUpros-Klassen des 
			HitBatch sind daher ab Version 62 leider nicht mehr abwärtskompatibel! |  
			| Aug. 2021 | Einführung eines weiteren Blockmodus CBC für symmetrische Verschlüsselung. 
			Zur Steuerung beim LOGON wurde dafür eine weitere optionale Spalte ENC_SYMmit den Werten1(für bisheriger Blockmodus ECB) und2(Blockmodus CBC) eingeführt. |  
			| 08.02.2017 | neues Private- & PublicKey-Paar für asymmetrische Verschlüsselung erzeugt, jetzt mit 2048 bit |  
			| Nov. 2004 | Einführung sicherer Datenübertragung in HIT/ZID mit selbst 
			implementierten Verschlüsselungsverfahren auf Basis von definierten 
			Standard Algorithmen und Open Source. Neues PrivateKey & PublicKey-Paar für asymmetrische Verschlüsselung erzeugt, 
			Schlüssel veröffentlicht (siehe unten), Dokumentation zur Nutzung 
			und Implementierung angelegt |  Verschlüsselung bei Nutzung des HitBatch-ClientsSofern Nutzer Software einsetzen, die im Hintergrund den von uns bereitgestellten 
HitBatch-Client verwenden, ist die Nutzung von Verschlüsselung 
mittels entsprechender Konfiguration und 
Parametereinstellungen (siehe Parameter 
CIPHERLEVEL,SVRPUBKEYundENC_SYM) einfach 
realisierbar. Es kann hier aber zu Problemen kommen, wenn keine Updates 
oder Wartung bzw. Unterstützung vom Hersteller der eingesetzten Primärsoftware 
gegeben ist. Verschlüsselung bei Nutzung selbstentwickelter SoftwareBesonders betroffen sind Nutzer von Software, die das HIT-Protokoll selbst 
umgesetzt haben. Hier muss entweder die Verschlüsselung in der 
lokalen Software implementiert werden oder es kann ein kostenfrei erhältlicher "Crypto-Proxy" 
zwischengeschaltet werden, siehe unten bei 
HitCryptoProxy.  Die Implementierung, wie bestehende HIT-Protokollbefehle und -antworten verschlüsselt 
		werden, wird separat 
		beschrieben. Freigegebener PUBLIC KEYFolgender Public Key ist ab 08.02.2017 15:30 Uhr (ohne die Zeilenumbrüche) für die Verschlüsselung der Anmeldung in HIT zu
verwenden: 
48015250010000010100970348B03E911DCCE5ED8F555C2116DBC4D7E96D4C1CDC4BBBAAD26BAA54B5C834F604F9DFB391459459772FB51D00AFD0FE3A9B2DA724E62113A9E8C95BEF377CB5FCF7FEBE
 42E5282A0DA50F01D5D2635DD958F9836CFB4F8B616777C0CF67DB9A5530AD679E321972E4D4F4F3
 3DED057CB690417A3B42FBFCE2AD9FDD80C815AF1EC858C796D4EA2F17954E4BFAD08E3E0397FA34
 122AC5951D889B06359A401E5506E50FA176B5A77FAB84E25CFCDBF2330AA173DA1156C8B79D6DB6
 BFAE828B00811183E63F137648E1FC1786B52D815C248BCADDDF6A17C941414F67A23ADFE82FE761
 96B64B96E36F8604FA00E8E357F5AE6C83B992D622D5E9CD9C1D00000003010001
 (MD5-Hash des hexadezimal codierten Schlüssels: E599362A39B7FB4F250A64FA24906C54und des decodierten binären Schlüssels:
 ADB00F99A980B924E3BB1159F3037403) Sie müssen auf jeden Fall die Anmelde-Antworten
auf Hinweise bezüglich ungültiger Public Keys überprüfen, da wir
diesen Public Key in (un)regelmäßigen Abständen austauschen werden!
 Der Schlüssel kann auch als Datei herunter geladen werden hier unter
hitserver.pub bzw. unter dem 
alternativen Datenamen key20170208.pub. Die Verwendung in unserem HitBatch geschieht dann mittels Parameter
SvrPubKey=@<pfad>key20170208.pub HilfsprogrammeHitBatchDer von uns zur Verfügung gestellte  
HitBatch wurde dahingehend erweitert,
dass dieser auch verschlüsselt Daten
austauschen kann (siehe Parameter CIPHERLEVEL,SVRPUBKEYundENC_SYM) Für ProgrammiererJavaFür Selbstprogrammierer stehen die Sourcen 
		des HitBatch zur Verfügung (die Klassen de.hi_tier.hitupros.crypto.HitCryptound
		die drei Schlüsselvarianten vonde.hi_tier.hitupros.crypto.HitCryptoKeywerden dafür benötigt).Achtung: seit Version 60 des HitBatch gibt es eine geänderte Paket- 
		und Klassenstruktur, welche sich auch auf die Verschlüsselung auswirkt!
 NEU: ab Feb. 2024 wurde die Verschlüsselung erweitert (und im Zuge 
		dessen erneut umgestellt), so dass sich die Aufrufe und Anwendung ändern!
 .NET FrameworkEs gibt inzwischen von uns ein 
.NET Assembly, mit dem die Verschlüsselung in eigene 
Windows-Programme eingebaut werden kann.(Die Version kann weiterhin mit dem im Februar 2024 erweiterten 
		HitServer bzgl. Verschlüsselungsparametern verwendet werden!)
 Es gibt weder ein Assembly für .NET Core noch für .NET Standard! Uns 
		fehlt die Manpower und Zeit, mehrere Varianten parallel zu pflegen. Der HitCryptoProxyServer wurde von Baden-Württemberg kostenfrei zur 
allgemeinen Verwendung zur Verfügung gestellt. Dieser ermöglicht als Proxy die 
verschlüsselte Kommunikation zwischen der Zentralen Datenbank HIT/ZID und einem unverschlüsselt kommunizierenden 
Client. Achtung: Dieser Proxy ist nur für einen internen 
Rechenzentrumsbetrieb und nicht als Endkundentool gedacht!(er ist noch nicht für die im Februar 2024 erweiterten HitServer bzgl. 
Verschlüsselungsparameter angepasst, kann aber dennoch verwendet werden)
 Programm inklusive Java-Sourcecode, Dokumentation und 
Installationsanleitung: 
hitcryptoproxy.zip. Kurzanleitung zu Installation:
	Datei entpackenUnter hitcryptoproxy\confdieHitCryptoProxyServer.propertiesanpassen (PublicKey,ThreadPoolSizeund evtl.Port)Unter hitcryptoproxy\bindieservice.batanpassen (meist nurARCHITECTURE=x86, evtl. auch Umgebungsvariablen)Den Service über service.bat installinstallieren (benötigt 
	administrative Rechte!)je nach Windows-Version muss dem HitCryptoProxyServer-Dienst noch 
	erlaubt werden mit Administratorrechten ausgeführt zu werden   . |