diff --git a/20230612/nit-20230612.txt b/20230612/nit-20230612.txt new file mode 100644 index 0000000000000000000000000000000000000000..028549fa446f6ef764d0b4529a4600773bff7190 --- /dev/null +++ b/20230612/nit-20230612.txt @@ -0,0 +1,656 @@ +Themen, 24.04.2023, 12:23:42 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +:) Definition: Nachhaltigkeit + :) Hardware-Nachhaltigkeit + :) Software-Nachhaltigkeit + +:) Rechtliche Aspekte in der IT + :) Urheberrecht: Software-Lizenzen + :) Urheberrecht: sonstige Rechte (z.B. DRM - Digital Rights/Restriction Management) + :) Patentrecht + :) LGPL + :) AGPL --> ChatGPT + :) sonstige Rechte (z.B. Upload-Filter, Leistungsschutzrecht) + + - Aktuelles + - In den Nachrichten + - Umweltverschmutzung: https://www.heise.de/-8989454 + - KI und Freie Software: + https://www.spiegel.de/wissenschaft/mensch/kuenstliche-intelligenz-es-rollt-ein-tsunami-auf-uns-zu-kolumne-stoecker-a-2410efbd-ab92-4c09-9cde-7d66ab4629c9 + - KI und Urheberrecht: https://www.heise.de/-8984836 + - Manipulation von Demonstrationen und deren Erkennung: + https://www.spiegel.de/ausland/news-zum-russland-ukraine-krieg-das-geschah-in-der-nacht-zu-montag-8-mai-a-5bce44e1-891c-4b2c-9773-9b4887c0392f + :] Software-Patente: https://www.heise.de/-9069532 + ;) KI-Drohne erschießt (nicht) ihren Operator: https://www.heise.de/-9162641 + :) KIs drehen Filme + :) Rust und Markenrecht + :) Ergebnisse der Heise-Konferenz zu IT-Sicherheit + - Chatkontrolle + - Umgang mit Gesundheitsdaten + :] KI-Modelle (Beispiel: ChatGPT, LLaMA) + --> ChatGPT als zusätzliches Teilnehmendes in dieser Lehrveranstaltung? + + o Software-Lieferkette (Software Supply Chain): + Dauerhafte sichere Nutzung von Software + - Qualitätssicherung + o Software-Sicherheit + - Datenschutz + - Rechtssicherheit (Beispiel: ChatGPT, LLaMA) + Material: + - Software Bill of Materials: + https://www.heise.de/select/ix/2022/10/2204811275955203113 + (generelles Konzept), + https://www.heise.de/select/ix/2023/4/2232111494480994748 + (Tools zur Analyse von Projekten) + - https://en.wikipedia.org/wiki/LLaMA + + - Effiziente Ausnutzung von Hardware + - Cloud + - Gemeinschaftliches Hosting + - Datenformate (Beispiel: Vektor- und Pixelgrafik) + + - Nachhaltige Benutzerschnittstellen + - Konfigurationsmöglichkeiten und Standardeinstellungen + - CLI/GUI, Skriptfähigkeit + + * Kryptowährungen + +Kryptowährungen, 12.06.2023, 12:33:13 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + - In Algorithmen und Datenstrukturen: + Verifikation einer Blockchain durch Rechenleistung + +These: "Prinzip der Blockchain: Fälschen ist legal und gewollt." + - Wer es schafft, eine Währungseinheit zu fälschen, hat sie sich damit verdient. + +Beispiel: BitCoin +Verwendete Technologie: Blockchain + + - Ziel: fälschungssichere Daten ("Konten") + dezentral(!) verwalten + + - Blockchain: + - Ein Datensatz enthält sämtliche Transaktionen. + - Dieser Datensatz wird digital signiert. + - Alle haben Zugriff auf diesen Datensatz. + --> Problem: Wer hat das Recht, den Datensatz zu signieren? + --> Lösung: Alle haben das Recht, aber wir machen es künstlich schwierig. + Wer es schafft, auf diese Weise einen Datensatz zu "fälschen", + wird dafür mit Währungseinheiten belohnt ("Schürfen"). + + - Digitale Signatur künstlich erschweren: Wie? + - Digitale Signatur: Hash über den Datensatz mit geheimem Schlüssel verschlüsseln. + Wer den öffentlichen Schlüssel hat, kann entschlüsseln und mit Hash vergleichen. + Bei Übereinstimmung liegt eine gültige Signatur vor. + Künstliche Erschwernis: + - Zusätzliches Feld im Datensatz, beliebig wählbar. + - Erschwernis: Anforderung an den Hash, z.B. unterste n Bit müssen 0 sein. + (Einstellbar: Alle einigen sich auf ein n.) + + +Beispiel: Datensatz: "Dies ist ein Test." +Zusätzliches Feld: anhängbare Ziffer +Hash: sha256 +Anforderung: n=8 0-Bits am Ende. + +Dies ist ein Test. +8a8c0ba357659d8ad10cc6c79048a07b440c053c50a1a83466440e5a22a319e0 --> 5 0-Bits am Ende. + +Dies ist ein Test.1 +1c5ec43b83bb2c32ca5a87bb3b71f66d1bf9d4acb20dd83f076e2b7f8af090eb --> kein 0-Bit am Ende. + +Dies ist ein Test.2 +1e67ffb1c3ae7d71e81673b11d828dd0b1734bb8c4f64eaf7323faaf377e127d --> kein 0-Bit am Ende. + +... + +irgendwann: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx00 --> 8 0-Bits am Ende. + + + #include <stdio.h> + + int main (void) + { + for (int i = 0; i < 256; i++) + printf ("Dies ist ein Test.%02x\n", i); + return 0; + } + + echo "Dies ist ein Test.00" | sha256sum --> 71f5a516b0ecea28053eb9a39a52e009f3730538371c5d2185805ebf832804cd + echo "Dies ist ein Test.01" | sha256sum --> 67c5beefb076750a80020707a5ff0d1d212e3add1db2f170dff5936d6efdcddf + echo "Dies ist ein Test.02" | sha256sum --> bdbe762991e58d7fd6a763c0008adeaa5e918870159ad45bde7b58f8cd219b01 + echo "Dies ist ein Test.03" | sha256sum --> f5ed9587f6d7c4d9139055448b27e03b6e58d62386ff8570af484708fca4738c + echo "Dies ist ein Test.04" | sha256sum --> d451c7ea3ddcd68260d37a6c10cb6c319bd39716498c5caba81a4615a3096058 + echo "Dies ist ein Test.05" | sha256sum --> 83a09964d34275fa9d474d77f79ccbe0327471d363d37d69d7cea1c365cd4b07 + echo "Dies ist ein Test.06" | sha256sum --> c56c18fd33e4689b353c1765d81743e4c759cbf2c83e8fe4154c24455907b0b7 + echo "Dies ist ein Test.07" | sha256sum --> 339d1932f9f1bc6dcf4b015c370a93339261c773abddfeca41b11b441b17bfc4 + echo "Dies ist ein Test.08" | sha256sum --> f9d27115b2f5c525644f132385e61107e91deb3ecdd526dd6d6e860330f184fa + echo "Dies ist ein Test.09" | sha256sum --> 3dc849f5265ac888456eee5912cbc93b2fd10f39cd16962498462d8e85594e8d + echo "Dies ist ein Test.0a" | sha256sum --> dd408be480f1d49422fee77308eb966da70f4f11ff10e2b1642f9606eff4ac55 + echo "Dies ist ein Test.0b" | sha256sum --> 21efb8ff0a26a2a8203dbd4ba854b87ea2f03aed3e57d36da6e92a39191590d2 + echo "Dies ist ein Test.0c" | sha256sum --> ab9b3683c07657871a3688d99d1eaf9eed64d634b0bc9f4e0bf4d06840854eef + echo "Dies ist ein Test.0d" | sha256sum --> 92964f16210967f3fb0d9bdd0c43e258425051930749125a6fe50b912decf26e + echo "Dies ist ein Test.0e" | sha256sum --> ad7c8a2895977e6a3e9493a0d843bbc3d61aac80a11bf9e0ec97ff25714937e7 + echo "Dies ist ein Test.0f" | sha256sum --> 18bcf5dc45f4c099dcba475d5be83d797868d8c63f226c4b92c9b7c3c4f84c91 + echo "Dies ist ein Test.10" | sha256sum --> bdfcfe1ce71530e6051cb89bd869f402296935354a10b540a4cdac065419720c + echo "Dies ist ein Test.11" | sha256sum --> abf0a678541da6ea4d500d0c1b424b359d016f58808799dcf6f5249e768a5fa8 + echo "Dies ist ein Test.12" | sha256sum --> e11d5e977f60eb31ad2b35302269749eb31f8a5797b5b49c858c807d4fb36ca4 + echo "Dies ist ein Test.13" | sha256sum --> efeb4262a9df3d0da5ea6cc91976c1af1084190de0bb40d5ed1d8e547b2a924e + echo "Dies ist ein Test.14" | sha256sum --> 1dd5f569d5a39c0fe9d7d9390289a6243dd497aff2a33883c2f6a71dfb05ec9b + echo "Dies ist ein Test.15" | sha256sum --> 882b26b8f9d5b34e17946cad89f99d82e0697b3de6e806b08756bd9450e3ddf8 + echo "Dies ist ein Test.16" | sha256sum --> 40449fbf3077c594bc390a00846b92c6d99a400bf79aa07645837fda7ecb2b6f + echo "Dies ist ein Test.17" | sha256sum --> cbe1f352e49b337b483f6328877620426e4d40ca694b1dabb4a200509bec628b + echo "Dies ist ein Test.18" | sha256sum --> 8d86136677fda02a8dd9c6ca8d303acd6670546e396ce857c1a3fb638a34c771 + echo "Dies ist ein Test.19" | sha256sum --> 801480ecf563ec112b694cf49043f02180ff794ffc61032d941b2390111a1609 + echo "Dies ist ein Test.1a" | sha256sum --> 023d96a339e9784b0d9ab3ba4b38405e37c393852cef0ef2339e730b58deed9c + echo "Dies ist ein Test.1b" | sha256sum --> 921a9500f1333cab7f70b8b460ba1102f7e0586a52597fab0f5fff980743ee8a + echo "Dies ist ein Test.1c" | sha256sum --> e8ba6cdbcbf78cd1254bf5b05b55ecf62ee178ca682d3bb79d6cd47c665a380a + echo "Dies ist ein Test.1d" | sha256sum --> a8af783c59c4dce257cf949cec4941bad848ff5ff7b224eb4290eaecd795fa82 + echo "Dies ist ein Test.1e" | sha256sum --> 84a15da68a78abb37cae08a20eda1b746ab2129909451f63e4266eea9871949c + echo "Dies ist ein Test.1f" | sha256sum --> 9732a239abd554040cd5cf3fdc7c73e79c3ef4970767ea2573431eedad58e939 + echo "Dies ist ein Test.20" | sha256sum --> b21b29a2ebc053cff89594d4c672d02d9f60daa878adee8911c22674fffa3524 + echo "Dies ist ein Test.21" | sha256sum --> 8d122908c0479151d0c21b280c1e44ceafe8475d197426abd1d2789cc126dec4 + echo "Dies ist ein Test.22" | sha256sum --> 970a81e731f771b00d3fecc78022675cf512582a7eb46979db960a295e178afb + echo "Dies ist ein Test.23" | sha256sum --> 5752f9bb98282fdd990a8560cbf0c7446d8236769dddf895893340bd71b63b02 + echo "Dies ist ein Test.24" | sha256sum --> 6c0cb4cede6d03e5abfb611c93bf25335a3a44f64a22f710e87eea8105728ff3 + echo "Dies ist ein Test.25" | sha256sum --> f3035af4c04bb45d0563d4c3359f84b2d790390d7c875bf975a4468d653adf38 + echo "Dies ist ein Test.26" | sha256sum --> fcc17578e7292baccb8d5f2b3aff8fbf0a3afaea43e9381e0b7b13fedb0bdb54 + echo "Dies ist ein Test.27" | sha256sum --> 6857d9064f50632832a6a21376dd6a50adadffdd5d1a1d2be8ba3a962a19a470 + echo "Dies ist ein Test.28" | sha256sum --> 84da99c57141f70d5ae7960e1708456c9cc66835ed10bf1838043070392ec2f6 + echo "Dies ist ein Test.29" | sha256sum --> 89dc1b9afd1f8208438be02a02fa2bfd0b39ed6f558746fe027894af8a77b362 + echo "Dies ist ein Test.2a" | sha256sum --> 36c4fadd30fb0f5ed45db9f6acac9f681ae42ca3aec6d8ea4ce5695c82421988 + echo "Dies ist ein Test.2b" | sha256sum --> 0ea353da121423a911ccbc4d4df6edc5a333a03f3aa9db0767c51a924a86468d + echo "Dies ist ein Test.2c" | sha256sum --> 7c4a4e25c675a563edcff46cd6e4a6c170e1f2d76b38d3bf49980ba3fe578d6e + echo "Dies ist ein Test.2d" | sha256sum --> 5aaa43ce4bbc29344ea5d1099cdb0c5bfa6fd293ebbebec10a1a2ce4955f97c9 + echo "Dies ist ein Test.2e" | sha256sum --> 744af66cc1ab29805f7c95884e33b2795afb740332cd4ac1a5da724ce2b9f24d + echo "Dies ist ein Test.2f" | sha256sum --> 8ebf856fa16314a38b7e4dd6b970f6b0ee37e3a36e7c4e16319177cd3a058890 + echo "Dies ist ein Test.30" | sha256sum --> fdfd1ce575c0a71b1989a2cf86f024c95508611a4ef707019c3644e0ecfa46b6 + echo "Dies ist ein Test.31" | sha256sum --> 8f9f43b39a8a1a40fd3a39ddae9955efd04af4d7647c92b49b78b19d17afe6fb + echo "Dies ist ein Test.32" | sha256sum --> 014dc4dc2b1ee28c6cb574ad58f75e34cde85c3a5fda061f7acbb3616ebc0d72 + echo "Dies ist ein Test.33" | sha256sum --> e3eac98ebe259710591e3052c28c540a56db52ddff91fe311cad17823558e521 + echo "Dies ist ein Test.34" | sha256sum --> 3d7c9a5f012b24f8b4a91355878ae9f9efbdeae60c2610d40f918c7170f481bc + echo "Dies ist ein Test.35" | sha256sum --> acd42e90cabd2e281c203e85928e5f26145034817debe7fdd5d02b6703c59284 + echo "Dies ist ein Test.36" | sha256sum --> af8d3363e81b7f2d311f2fe1618039b065a120cfb1d30e6e0df51632804cf0e8 + echo "Dies ist ein Test.37" | sha256sum --> 74ef7f032e21b4a9e5cf684f8c9b94f95acfebcd98bdd765b731c331be9fda17 + echo "Dies ist ein Test.38" | sha256sum --> 74831cc32513fa7ca26509c083a881f480582460a8e48e21b9f1f08bf45dc2c0 + echo "Dies ist ein Test.39" | sha256sum --> 99280f6fdc36a82cffb17581b6f74aaa2e5e1ef9412f2a8943432b988765be18 + echo "Dies ist ein Test.3a" | sha256sum --> a1a8ae69c22d5c4226ee438ce24c85d1ce1ee80a17c663f3a6702d65243f146b + echo "Dies ist ein Test.3b" | sha256sum --> d192255f8c9dff2f27dd66dff1c64127b91e1bf758872624654ecd585499d425 + echo "Dies ist ein Test.3c" | sha256sum --> 8794f4f2c420de3df8c5730cbde3498a059eb9796e8fbc783aa530fb8b937177 + echo "Dies ist ein Test.3d" | sha256sum --> 50e061e71b427326cc2e772c58e1bfaa4ccf0fb445c611e2f1b2397dee3f3516 + echo "Dies ist ein Test.3e" | sha256sum --> 1e1fa3e662f9c5317d5421b802bc95ac32d973b5e8c88cd40e9c61fbc3b700ef + echo "Dies ist ein Test.3f" | sha256sum --> 3a3694417f7e5293c085d50de4cef5d910a47d9d85071a7435504967b502907d + echo "Dies ist ein Test.40" | sha256sum --> dc871f672d5ec31dea59c5955c534446a210b2bed1dadf594171e11d02d1c1f9 + echo "Dies ist ein Test.41" | sha256sum --> 3c3217ccc51bb494a8064164635c03cdcbafbf876b5dbef1188c01b3f5b266e3 + echo "Dies ist ein Test.42" | sha256sum --> 23211d347ba28bf77e2480a53369ee957304697278708e704851935450f2b040 + echo "Dies ist ein Test.43" | sha256sum --> f081d75d8eb988843ecf146b193aab983028a0225b225a279efa9f8786db0b13 + echo "Dies ist ein Test.44" | sha256sum --> 212550a9423af4fecef366d526d2fb5e003cb9f93c1ff0d60033881fd9e4e7c5 + echo "Dies ist ein Test.45" | sha256sum --> df92376ddf01d67164adb22ccd324f87e15c525b7176ef1b18436fac8cff70b4 + echo "Dies ist ein Test.46" | sha256sum --> a30cfccd54fdd54f28c4e158eb6bc51761d5240bf654e3280ec83a1a5f036e59 + echo "Dies ist ein Test.47" | sha256sum --> 06a047ca2035ab5f1f69beb1ae21abd8b5152ff19d8293e821a4d55f0557cad0 + echo "Dies ist ein Test.48" | sha256sum --> f9dad206588f4d7881e5cfe3d22cc8bc36ee25642171eb208b394cd27677669f + echo "Dies ist ein Test.49" | sha256sum --> de96ea534bd128908b2dddb0f09e0ee9e39a50d1fc6bb36c5bf4688de4d898b9 + echo "Dies ist ein Test.4a" | sha256sum --> e737c19a9e1acac49d63ce37ed4c9607644072105bb74bafe84b3a0244f804c8 + echo "Dies ist ein Test.4b" | sha256sum --> 12c4a8f2cdf581a341029d9f2156b983116eb42a3fdd986a8c0df1c38e955c07 + echo "Dies ist ein Test.4c" | sha256sum --> 97dc46850cf31badb6f1da1721f91f93470b9333b60265554557214b7e651a08 + echo "Dies ist ein Test.4d" | sha256sum --> d65527e860a4141f86348ed81065be6ebd28385da4eae607253063ccdaf810c1 + echo "Dies ist ein Test.4e" | sha256sum --> e2a7935531f16c744b3812ab239aec0f9c0ebb762585c2a38a2039041bb001d8 + echo "Dies ist ein Test.4f" | sha256sum --> 405809f288a788b217c67416016124f585f24e7edf7ed3721c4ce854d3299a33 + echo "Dies ist ein Test.50" | sha256sum --> 35d4da635b91d9852e5d852c035fdfc8db96f48c7f173c5f7c71bb485572e2b1 + echo "Dies ist ein Test.51" | sha256sum --> bc99eb760ccf79b39bfdad73b178eb6788f1acabac00c47bd48a054cc934f11c + echo "Dies ist ein Test.52" | sha256sum --> 03488de58cd0037b56a15639ef40e66b5d6d7160fd608805df763107b4bfc7ec + echo "Dies ist ein Test.53" | sha256sum --> 91f8469276456de714ec11ef967471a90e695dc1f415061fca6db3bf1ca7b440 + echo "Dies ist ein Test.54" | sha256sum --> 2cf41f29201a0048a3ff5bb80ee9c5b124cb907ea099c970e652cbc9e3485284 + echo "Dies ist ein Test.55" | sha256sum --> 36cfdc85352bd7e52ac1937cc046124398b0547f4ff56dcc3eb3bf4a10420902 + echo "Dies ist ein Test.56" | sha256sum --> 62409c453a36006dead450992d65f188704492854d2df3b7eed12dabfa68af1f + echo "Dies ist ein Test.57" | sha256sum --> d2e37472998392801babee2a6bd91804b99ce8404ac384683db1fa5ce9593a10 + echo "Dies ist ein Test.58" | sha256sum --> e3d1c3f53bc93e0fe32050afaeef9897e842a5391efaa31ea0c323521cbebee3 + echo "Dies ist ein Test.59" | sha256sum --> 7898b5ebd6415ef417fd884d3af09f342d6ec75e6370d8e0466943e132f75d63 + echo "Dies ist ein Test.5a" | sha256sum --> fe0020d0d7b6a500f68485c62f2110409bec4eec73514b5041b0bccd01eb50c3 + echo "Dies ist ein Test.5b" | sha256sum --> 27688d5aca31c04ae2524f730d45178cf4cfa9edf6e5cf4da5b46d836e496b9f + echo "Dies ist ein Test.5c" | sha256sum --> 0c407523debac92f9bededf3e71898561bbb3e8bd5a6e365e250ee3e72dee0cb + echo "Dies ist ein Test.5d" | sha256sum --> 0b30029a72a4bd98f2351e782d6c9091e0287a9b4ecc30517f185849b17aac69 + echo "Dies ist ein Test.5e" | sha256sum --> 347b64fe5435e8a3c9bcc518d8aef3c07af4baec54cc2fbc3eee0506e98f7793 + echo "Dies ist ein Test.5f" | sha256sum --> ee895506999905600b619381e214992f983eca76e7eb6e6b5019298a29201d1a + echo "Dies ist ein Test.60" | sha256sum --> f770b07b3ebf5a6eddb1e16a4c1267d1323a2a109f2fb84484ef0db4c2d406a9 + echo "Dies ist ein Test.61" | sha256sum --> e3b0ebd7d45b404728a1b6e82ca669390b7a46e141a71503bb92d2e504ac956b + echo "Dies ist ein Test.62" | sha256sum --> 45585f75bc1ca87e8424412cadedca7835fad10d63a7c2359b6f09d226be012d + echo "Dies ist ein Test.63" | sha256sum --> c68718c991499429555988c14dead58a12c035e24a83ffae0d39eb89953dcf60 + echo "Dies ist ein Test.64" | sha256sum --> 7d731f7440d2ab62be3618955c22f8b653052d8285bd4ca798b4aa661e8f8991 + echo "Dies ist ein Test.65" | sha256sum --> 4e2969049323ccc7039357084a3a027fff10f66dbec4ecc28e4edd6aa6b9384a + echo "Dies ist ein Test.66" | sha256sum --> 6b3fd7b7a6afcf4979adab16b02b5bcb5733e008d1427b5b1b5877aaf0855d87 + echo "Dies ist ein Test.67" | sha256sum --> e1bb1354cf9e1b192aef2ed0b98855688dd88a2d516549d61f1d1394f4fdc1df + echo "Dies ist ein Test.68" | sha256sum --> 1988a73276b3278b6feffdd768dbdc5c031eba54587eebc218c825d01c0fd1f5 + echo "Dies ist ein Test.69" | sha256sum --> b911ddb1b5116873e18b8b1260fa9741eb18530545ffab1e31d19690b44802b1 + echo "Dies ist ein Test.6a" | sha256sum --> d1694a48d218029df10796483510470f3ee24c0a9518841edc2b5f30f71db9af + echo "Dies ist ein Test.6b" | sha256sum --> d3223b6921776d23a1d193c38dd13e2ede191668ab9eddd80ff9b072ba341470 + echo "Dies ist ein Test.6c" | sha256sum --> 9216b364d3066b241b1580fd013e9db267aadc326cf140f1830804ae8aeda8df + echo "Dies ist ein Test.6d" | sha256sum --> 1d0ede9893b8fd27ad5eeb302b3d3d4dc6529c29cf2030940d183393f749fb7c + echo "Dies ist ein Test.6e" | sha256sum --> 512c25e6ea0c7a2f86138a61aa92403fb7da94621e150f834389d5e81c442b95 + echo "Dies ist ein Test.6f" | sha256sum --> 517487d5b8500711ed7343dd727ec0f4307c76ed7581709132604fc2a6c57d4a + echo "Dies ist ein Test.70" | sha256sum --> 25f9435016811f6cd2bf84470a3382199f7e3b9a521c1e2329168b683b2e4a7e + echo "Dies ist ein Test.71" | sha256sum --> 2fd268b754eb2b9eb445810dbde9aefc6042f0dff26f387de1d48164e5626f19 + echo "Dies ist ein Test.72" | sha256sum --> 481043cec2ef97fde657bf40faa51320a681c36a59d972827046924df81c2380 + echo "Dies ist ein Test.73" | sha256sum --> 72cbea451609b74e09788e3f72b1f423ac004967be7ccf774583cfe8cb11005e + echo "Dies ist ein Test.74" | sha256sum --> aa9ea2e2ce2f45bd9f71b10957a1d5923d80b82ba8a29629af12d5bfd5fa2105 + echo "Dies ist ein Test.75" | sha256sum --> cc773c2f8fc8db2b0b8c8b33be592b35889cb47ef608818113ff635fee82b5c5 + echo "Dies ist ein Test.76" | sha256sum --> 6236f11e4abbfa36d92dee1261470b175cad0410c082483da23b576f37b19a9b + echo "Dies ist ein Test.77" | sha256sum --> 4d44abdbbc5acb3216b1c7ae43db100634f024fef9dade37a9ea0119a6e2ab0e + echo "Dies ist ein Test.78" | sha256sum --> 0f237f91db234c5c125c5ccecb7e6773b7f960e02ae971398f86c2bb35cff744 + echo "Dies ist ein Test.79" | sha256sum --> 5e0fd8703dce8d846d67ec63e4a8409d1c87e6c1bb9880775663fb2f94646527 + echo "Dies ist ein Test.7a" | sha256sum --> a0e93ff64268b00f1abc794be4f9c5ca3eea4d392c3eb1baaf4f83411c41615d + echo "Dies ist ein Test.7b" | sha256sum --> dd3b8ccbe8bcdc078ab8c106ebd84c6666efb028b38eb85d249a0e6d87fc2813 + echo "Dies ist ein Test.7c" | sha256sum --> 518c8bcaf9a12661353ce830fae72b58bd011d244ff40a055492b3feb60c44ee + echo "Dies ist ein Test.7d" | sha256sum --> 1e5e61f62e554c4140fbef50b82a450a9a122d14b27ff69e1dda9dfa5cf912e8 + echo "Dies ist ein Test.7e" | sha256sum --> e36a13606f2771f509cc70edd3cdc92d51ce6e3398eab9845bac4d038129c07b + echo "Dies ist ein Test.7f" | sha256sum --> 237a4c154d81959dda5d3fc281978120283d7ae8346eb0236d703dff5048fd8e + echo "Dies ist ein Test.80" | sha256sum --> d348cc7ff07b56ed842862e4b053c67a04289376907386c53d2a5ae2ffba83a2 + echo "Dies ist ein Test.81" | sha256sum --> 2f7ea1d2b271ceab3ee3385f7a1ddadbfef32e9ab84da7390740f6a5326cc0f1 + echo "Dies ist ein Test.82" | sha256sum --> de8e8f91c57e0bb5258140a5cc217d80d57ead5226bc6cd4a87d3a8ba8deaf9c + echo "Dies ist ein Test.83" | sha256sum --> 580a6882f53bf5981d953d28f8ae4413784de1b98fe028b92a096b96213c641b + echo "Dies ist ein Test.84" | sha256sum --> 872b577746473ce53ced34d4431187a15e3e6f64dc7b239356382638a9bee243 + echo "Dies ist ein Test.85" | sha256sum --> 0eba3d8e6842e6a0ff070e9107bb300a7fdeda1c0c0accd996115170ee77895e + echo "Dies ist ein Test.86" | sha256sum --> b42d5d2c782e1476e2b986e69f574cb79ad6e9553c63047e97f8efc862cf8ba5 + echo "Dies ist ein Test.87" | sha256sum --> 1651bcbbdf956334a9cea1c49cc4d3a9346589aaa3cf6a4f40d9d3c40e1578ce + echo "Dies ist ein Test.88" | sha256sum --> ee2ff6cad5011684f50ce4baff276362cd22f578f6e0a12bb567d0ae3bbb03f5 + echo "Dies ist ein Test.89" | sha256sum --> 6e034bd6be4b0db905a685e30bccc64a7eec6f68dbdd4a5b0c8cb068b4401c10 + echo "Dies ist ein Test.8a" | sha256sum --> 6196b99b1ab95f898561c362f21a4145342d1bed9b06e7da8f1f84dded197d7c + echo "Dies ist ein Test.8b" | sha256sum --> d0427989bcbc8c3c45e606b6bb1b5598d3c3fc87ccac7e7470a4009f8d378271 + echo "Dies ist ein Test.8c" | sha256sum --> bd6d54cbc51b724c1756d15b7914424f3d4946a49fbb39d8d356e7aea8afc304 + echo "Dies ist ein Test.8d" | sha256sum --> 82f3fbd7a47b37fe2b2da55d451d55e8235b9674aa627083d7a36e469bb7e1e7 + echo "Dies ist ein Test.8e" | sha256sum --> 1d3290ec1b51f66c5b1706cf7ac3caf3c540236c55eeaf5bc1ee3f0da6bfe093 + echo "Dies ist ein Test.8f" | sha256sum --> 312ac5f69791665bf2b0b1c5d4af9574276f979c0e3f8fdcb08fdbd2b0767855 + echo "Dies ist ein Test.90" | sha256sum --> 6979eaa15d3098338eea3e26213d23c3ebb3571721a0db34e97dd9b85360e3a2 + echo "Dies ist ein Test.91" | sha256sum --> d9e1b0667c46e0a59c8a109605f8eeb1cc1ec4b5f30deca6ec495be44ec28295 + echo "Dies ist ein Test.92" | sha256sum --> b58f043df7b1b6fa104ac1bb5aa633bed49f527e03009a3cdb21c28770fdf45a + echo "Dies ist ein Test.93" | sha256sum --> 88e88055543a77a9ac7eb800811df2bb50fe63757844a908a36f66c47e0f998f + echo "Dies ist ein Test.94" | sha256sum --> 89bb63e2d3fa2a5871c14a58eaca7a41d3975012ffb3e3dee98d75b45d3efdd3 + :) echo "Dies ist ein Test.95" | sha256sum --> 7d89049f95a719f4a10596e7ca800de4e3052bd714f97051609241778566ac00 + echo "Dies ist ein Test.96" | sha256sum --> cce31c1786e748433243debb61ae596b2aa14d9a73cdad47d8d2499a219bf7ec + echo "Dies ist ein Test.97" | sha256sum --> bca082c1916521c7be5f57674c65e64de740ab39e60ddd5b45ca3f006170af6a + echo "Dies ist ein Test.98" | sha256sum --> d7d5f4e6b77980386f784abb619511edc2b2e40b6c2756d3272d6c2b78002484 + echo "Dies ist ein Test.99" | sha256sum --> aafee9b1d7a4e8adf8b61f8fb9b0768ce6d739f966d6650d18db0c94947cf0c4 + echo "Dies ist ein Test.9a" | sha256sum --> 14cf4ced72c255c3a69b5a675612516827cf9ea02f81f0b248f2cbc64a0605c6 + echo "Dies ist ein Test.9b" | sha256sum --> 5cd996e82327d489c7819560034ccce442561360eced62356951084154e4e571 + echo "Dies ist ein Test.9c" | sha256sum --> 2d86a29bdc532c89660e1bb3a099489ef0bfc00848645cd084f4ce3e32040261 + echo "Dies ist ein Test.9d" | sha256sum --> 4f0ec4b036f508f56eacb13a85b16a8711443ed6c80ecdee52128d6ffb06fc4a + echo "Dies ist ein Test.9e" | sha256sum --> 8ba5c73cd47f38cf7614e12c6c5c170b9badd8ee9e4111237c149c0b50d72b7b + echo "Dies ist ein Test.9f" | sha256sum --> 495af5616b8cdb89ec277c82df029979e412500f8bb60d347d3eb8566ee7305b + echo "Dies ist ein Test.a0" | sha256sum --> eb765d38a1063d718839de2c02872aea1fa381959368a8e8377a8ae5745960c2 + echo "Dies ist ein Test.a1" | sha256sum --> 0679625b03f6e7f015da07a471933d463e8b93083702e04e1199bcc1923a8efa + echo "Dies ist ein Test.a2" | sha256sum --> a3fc254caac31f175a1cda31f328bca283ace2af582d9fbdc02deca66febfbc1 + echo "Dies ist ein Test.a3" | sha256sum --> 736fbd6d185a08784c815233ff8fa06d460251f2d387cf590c4db84903858911 + echo "Dies ist ein Test.a4" | sha256sum --> 9e5d86c731f924d75d0abb105ddff41ad53611f0fa844c7aae45214f6234535c + echo "Dies ist ein Test.a5" | sha256sum --> 365d7ead3a8eae60e11a24f951405bbecdd8874a4d490a9d5b43b77f942af21e + echo "Dies ist ein Test.a6" | sha256sum --> 5151fec1b0bfced200d81773150358c6e29f1427caa051911779cfad4e9aac5e + echo "Dies ist ein Test.a7" | sha256sum --> 03e311f433bea9fd3aa6ef6e963dec28e235ee3c9933f44902f18a571143a3a3 + echo "Dies ist ein Test.a8" | sha256sum --> a95b3290c4e706e95eb9816412f4984a740e468a9750a685898be54702b76db3 + echo "Dies ist ein Test.a9" | sha256sum --> 0b100c07b242e4b6b1cf8ce34118c42303ae317db145d7824959e6cfc68418c7 + echo "Dies ist ein Test.aa" | sha256sum --> 5d43bae11e081392f6511d076007738e8826a5970b041f4f706fee2671d3a3c5 + echo "Dies ist ein Test.ab" | sha256sum --> aeaced5a5ab079e1c061dd99ec3a0da8802fda99e1d32b3febb5d8cd72f5f267 + echo "Dies ist ein Test.ac" | sha256sum --> 4ec0d7fd81d0c61d950f1e1982a421f4046dd729391f103ccfc0c196fcc0f0b9 + echo "Dies ist ein Test.ad" | sha256sum --> b7a0fa755db777f467739626fda615626f8e80b8a9cbce764c65a1a9f6ffe662 + echo "Dies ist ein Test.ae" | sha256sum --> 4ab1cede709366bfce34be6bd73866d74b74405a12a73b83339dadac900f274f + echo "Dies ist ein Test.af" | sha256sum --> 071df844d8fedbb19f3c9e5a218a493463bcdce3a8349c3a70ea2b2867a3c215 + echo "Dies ist ein Test.b0" | sha256sum --> faec3c79b1d911d142c306b4a0ab6bc15fe6a1718b8495d53993b1636d2a3706 + echo "Dies ist ein Test.b1" | sha256sum --> ee04a94715aed1171864f379cce1fdb7893dc2217517f62fec9d06b896d93195 + echo "Dies ist ein Test.b2" | sha256sum --> 3162aac9d4421fb4b6c081dd6b126b9dc1c23480bdcc58204919aa1e32172a06 + echo "Dies ist ein Test.b3" | sha256sum --> f3c2862ab4d9a8855aca133e311b0bc878291205aca61e6226cca0a595d720d7 + echo "Dies ist ein Test.b4" | sha256sum --> 5adf9ed5f9dc10078e9d01189e3a488b530d64c7c6b906a10223051457e99c41 + echo "Dies ist ein Test.b5" | sha256sum --> c353bdbbbd5ac95e41c61692e8683449d18f59525a1b78cf19e7641ef028c839 + echo "Dies ist ein Test.b6" | sha256sum --> b988434eba84d1073b8f91c574fde43b4d6225f44df47f2ef4b8d2f4b93fa8f4 + echo "Dies ist ein Test.b7" | sha256sum --> 0c9ea66b498a491bdabf9636a0044dcab8d7bf3b330c67b1fc76c39a7ba5d9ce + echo "Dies ist ein Test.b8" | sha256sum --> ca5ed687f72edf104e046f63b8286b300678027711554e4b6d5ecec248864b9c + echo "Dies ist ein Test.b9" | sha256sum --> 116eeec4bf0b605c2c877086995a9bae60f6a4acbc7eba20105d2b292c2949cf + echo "Dies ist ein Test.ba" | sha256sum --> 3180dfbaa2cbff520d398d539bd1b428eba2adfba176d6c89e016cbd93336997 + echo "Dies ist ein Test.bb" | sha256sum --> 8eeaea6386ae8763b0643db72a5f5157c5a1d8219caa9a362ebc43b3397bb1d1 + echo "Dies ist ein Test.bc" | sha256sum --> 39f5f4204710d2db59b09573d3ee298e10c6c1cfedb1b3d4d50e84cebe221a91 + echo "Dies ist ein Test.bd" | sha256sum --> ec74c57e11313159c6d35501b8c95c01e118fad8ba49f74d9a6a485b820b430d + echo "Dies ist ein Test.be" | sha256sum --> 1a1382e56433e53dddd7cb14faa479a9d552afb85790dcf0e2abd4e8bad6839b + :) echo "Dies ist ein Test.bf" | sha256sum --> 72b3aae77e6cc26180bed36f00df13a554452ac05b66333f1a09d8ce83081400 + echo "Dies ist ein Test.c0" | sha256sum --> e8005109d90201790aca0d22f4f5306de9ab1670fd30003f71307c3962ce1e19 + echo "Dies ist ein Test.c1" | sha256sum --> 5f78deee85c9ee09a1503e40a14c2908ac2bbd96321e79475da62f3c2db460e1 + echo "Dies ist ein Test.c2" | sha256sum --> eb37e90de6980a4422f3d9288ac7afd546a554538d5c3ece7c6a5f0dfcfff9b6 + echo "Dies ist ein Test.c3" | sha256sum --> 7de73ef8e0c9d54dd7067383ecbe924b80962fd1c5b7b803811453e06f1c014c + echo "Dies ist ein Test.c4" | sha256sum --> 55c7e311e4bf57afbbd007bb235b19377abe6146ab8eece439e683872e5d4e83 + echo "Dies ist ein Test.c5" | sha256sum --> a398ee35f6fd0f53aa8b0dad3507f62438c044d07c2c704b1007f0b8f242cba2 + echo "Dies ist ein Test.c6" | sha256sum --> 3c61604b58bf153f909895435965b77ad6bc2da6534394227b9cbfc2580f040a + echo "Dies ist ein Test.c7" | sha256sum --> 3838b9374b0ba3316a4a148342c67a4628e737bc546b24e96db80b9b04ec16e1 + echo "Dies ist ein Test.c8" | sha256sum --> 4ca3bc50afeccc8f8e9250e2d2855d93840218bbd77213f4097d855c0146449a + echo "Dies ist ein Test.c9" | sha256sum --> 8e99db4dacb99a08ec3c6046f9e658e75efbd79455041d3eb8b4671f9fb9303f + echo "Dies ist ein Test.ca" | sha256sum --> b089feda2f07ee9fde12da2b7c16965382fccec3d921fe770d6995c8d6f519bf + echo "Dies ist ein Test.cb" | sha256sum --> d9a443bc77dbf9f6eb62a946236fd0afa95b07825cab5ce9724bb315506adf2a + echo "Dies ist ein Test.cc" | sha256sum --> cff3eb34b75e7d79be16700aa98c9d9745f5083083ee2321c17e91f94a35c9d5 + echo "Dies ist ein Test.cd" | sha256sum --> 9ceff071abf63271b49edd7349340a1a05c06b6fd68010a7351b6d7628afe004 + echo "Dies ist ein Test.ce" | sha256sum --> 995fbd331ef94f0191ed2b2359467b26ea10f19c744698ebd3cd14e398ddcf88 + echo "Dies ist ein Test.cf" | sha256sum --> 5901e45d21b0fe8e2e74c73712119fcc6c39b0dd3865ebfb24f1aeb8fa7ca6c3 + echo "Dies ist ein Test.d0" | sha256sum --> faaaaad597b3f3db55bd6373f15cee14735a695143ed8d4db7231ea8002f0d58 + echo "Dies ist ein Test.d1" | sha256sum --> 03aaae7b9748eb229d1c69a0334b08c2ec8713498a6d791e120c1b3c12f6e5e7 + echo "Dies ist ein Test.d2" | sha256sum --> 72f16b9f11e5ae5ae2bb7fae055e3783c50994abe68e6b18a94d1c30959165f2 + echo "Dies ist ein Test.d3" | sha256sum --> 17fbc6d6797138a6e46df10cfabddcd3e27eb5728e910a7d6db9d9e298f556c8 + echo "Dies ist ein Test.d4" | sha256sum --> cd02111017a447ee66f2cced9a695d05ab0e765aa4cde363c96f14cb349e73f0 + echo "Dies ist ein Test.d5" | sha256sum --> c7e667f5369dd043b60bf5e549de8bd06f09ba81152117c7b857b72d3e96cdda + echo "Dies ist ein Test.d6" | sha256sum --> e022a995d4723b044fc1b2a4feafd94690dde15814c00942f0c9a38be2e57d77 + echo "Dies ist ein Test.d7" | sha256sum --> b4065e0d3f6d8b0ae848580f288cc9cf3808570317df2f48804135e9a8b9e2d0 + echo "Dies ist ein Test.d8" | sha256sum --> 4b017e01e1d2739425b9e990d5265e65e59b8753f49c27d77477afc85007fbe9 + echo "Dies ist ein Test.d9" | sha256sum --> dcd62e08870326e78800c68080f8299972913bd402f0dc660226687202937258 + echo "Dies ist ein Test.da" | sha256sum --> a645f02d807817da64e1c3c5c813a54d705d945523e810ab2c8e48122991b332 + echo "Dies ist ein Test.db" | sha256sum --> 0e43c05cd62cfd0523549a029ab01c9c77c8f38969316bc358e1ee38a2a6132b + echo "Dies ist ein Test.dc" | sha256sum --> d9c6236fd9c7497cd390e7e1bb6381efde0c4e984a3db161f92e38ae4ee1f356 + echo "Dies ist ein Test.dd" | sha256sum --> 58d8180ea0723c6a294f1e871dc496d4e10f896f7233c67df9d6a625e9b7dc89 + echo "Dies ist ein Test.de" | sha256sum --> bfde686c9f51c4231655378a602f4a0f33ad474254710ff7ef6e8abeb3c4bb89 + echo "Dies ist ein Test.df" | sha256sum --> 1d14eb1128643bc6ddf2b376669cbcd6bd82307df503c94bbb012f3d611f7869 + echo "Dies ist ein Test.e0" | sha256sum --> 31c3f395e36cb81d7aa50dabca40975d1141688f6e8380448d93d117f23168e1 + echo "Dies ist ein Test.e1" | sha256sum --> 5a44ee054baa7b6889142253e24feb1dcc7435e361d8618b21c0e40bb6542317 + echo "Dies ist ein Test.e2" | sha256sum --> b30cfeea138f13b1533d7154bb598f550edd50b852d415cef8fde010bfa9e79c + echo "Dies ist ein Test.e3" | sha256sum --> 3d5d97092ee5295ac3dccb751613e63e133d966d1f2c52977aae2f1efd84434b + echo "Dies ist ein Test.e4" | sha256sum --> 9c0c5d9d5a638ea37c8d4a55e1b7c242a4376f4fb1d6fadfe13b49cb0a51ca8d + echo "Dies ist ein Test.e5" | sha256sum --> 7e1b4ed2cc26a900d0daaecfa1375a16bb0fd628df2fbfb60a6863a7ce435edc + echo "Dies ist ein Test.e6" | sha256sum --> b27fbe269d10be3177dc1231895bf507c7b04c6300dba566db98b6714842b190 + echo "Dies ist ein Test.e7" | sha256sum --> ed0f0d57da67af5ebaa9ade1a48282665c1fd4103f21c122c502358ab7532bcd + echo "Dies ist ein Test.e8" | sha256sum --> a424f5ee3ed89e469e94bef20c2afeab2a5137e7282705bcdc693f6a0ba088fc + echo "Dies ist ein Test.e9" | sha256sum --> d88669d81bf667d2ded4caf2b997e3cf254f8e51deb49561f709760e5a15d7a1 + echo "Dies ist ein Test.ea" | sha256sum --> 64a162e66658ddc76f288431a8b20c6a61460298351ab8179e18f93a825f1dba + echo "Dies ist ein Test.eb" | sha256sum --> 83975fd01b5dbc584b6d8f5e0afe3b1e88588b5b0fdbeac0fb12cc68deb943ea + echo "Dies ist ein Test.ec" | sha256sum --> fec6e3118a3937c05b9fd81a2e7505d39f8b05d7cec803a0624d0a6c1a43b4c0 + echo "Dies ist ein Test.ed" | sha256sum --> ca3b494e94609126522f08d348772591e78852452b5d84123eba8073639a0d4d + echo "Dies ist ein Test.ee" | sha256sum --> f0ac6d8c993fb0d986c11962efad8d429ef1e085410d03c9d7dbfd0cd208cc2a + echo "Dies ist ein Test.ef" | sha256sum --> df6a21371eb7dcd17f8b77f25bf921af06f7ffc6cb3518cc58d7971a463997aa + echo "Dies ist ein Test.f0" | sha256sum --> d5250e176b308906d52d51bf728436477b94e6f95a7cff2ea9130b636ab6c56e + echo "Dies ist ein Test.f1" | sha256sum --> 0a10aaee394fa7f62258c8c1e592e05c43d3ebb7a26263e444dba12dd477dc90 + echo "Dies ist ein Test.f2" | sha256sum --> 8117fa4b0732f83efc3319fe808f9d20be4cc0d1fa4ed68331a70ed801bc6577 + echo "Dies ist ein Test.f3" | sha256sum --> 9c0e91f3287a7c0e41ed851acff54f992d019aa453ca7ad254aea5424d2f1d98 + echo "Dies ist ein Test.f4" | sha256sum --> 3bd76274830bec0ab4a08d0073886a170748fff884f53d0d6d402d4b8c5fc7c8 + echo "Dies ist ein Test.f5" | sha256sum --> 9ce48d63b8b57b453d62966dd2af9ab3bc1765d35c7587f46e5b9dfe4c068295 + echo "Dies ist ein Test.f6" | sha256sum --> 47c8e7eb26ce5b679c5e1b4548b8eb1dade1509eae968e1194256811aaff561a + echo "Dies ist ein Test.f7" | sha256sum --> ab18457194c4f9254035301be9d791a26103714ea8181e3bc0832cac6806b2ee + echo "Dies ist ein Test.f8" | sha256sum --> 5eeee2f5d7d5fecad14b3cb86994844c4a51a9f2205d9fcd700aa9f5e1c0b933 + echo "Dies ist ein Test.f9" | sha256sum --> 065ac677251268895932a15976ca9c3b73eacf097291b684ffb39e39e2e6da14 + echo "Dies ist ein Test.fa" | sha256sum --> 10e37910da5d1f4795ff13d3f762e91f31110b500dbfdf61f762fd489d6af561 + echo "Dies ist ein Test.fb" | sha256sum --> 804ae6c70916bc192a11ecbb5182f685ea71c06f2c804ca0a5cace5694d17c88 + echo "Dies ist ein Test.fc" | sha256sum --> 4063193ccbf560c15c2e7794bcd624b6807f7eedf3dd81a92228fc4f1fcf312e + echo "Dies ist ein Test.fd" | sha256sum --> 2796ab526ec3a02f35140dabde1d02813514d49a4a977f0b481aa0f3b2a8b911 + echo "Dies ist ein Test.fe" | sha256sum --> 8e5fe6817648139cbc6947c74d6d2bc8105a31d37532052a05da27334d614f9e + echo "Dies ist ein Test.ff" | sha256sum --> 0a107fe12afb85a60d1c31db415baa3ee83126e1efadbdd8e5417600b4566b78 + + +nach typischerweise 2^8 = 256 Versuchen hat man statistisch Erfolg. + +--> Viel (eigentlich unnötige) Arbeit: "Proof of Work". + +bitCoin: Man macht das n absichtlich so groß, daß es typischerweise 10 Minuten dauert, +bis ein Datensatz signiert wird. +--> Jede Transaktion dauert typischerweise 10 Minuten. +--> In dieser Zeit rechnen riesige Rechnerfarmen. --> Viel Stromverbrauch. + + + - Schwachstellen von Bitcoin: 51-Prozent-Angriff + + https://en.wikipedia.org/wiki/Double-spending#51%_attack + + Wird 51% Attack genannt (wobei 50%+Epsilon natürlich reichen würde) + + Die nachträgliche Nichtveränderbarkeit der Blockchain ist nur + dann gewährleistet, wenn keine beteiligte Partei mehr als 50% + der Gesamt-Rechenleistung kontrolliert. + + - Größtes Problem (im Sinne der Nachhaltigkeit): + hoher Ressourcenverbrauch + + - Energiebedarf der Rechner, Stand 2021: + 120 Terawattstunden (TWh) + + Zum Vergleich: Stromverbrauch von Industrieländern, Stand 2014 bis 2016 + https://www.laenderdaten.de/energiewirtschaft/elektrische_energie/stromverbrauch.aspx + China: 5.920.000.000.000 kWh = 5920 TWh + Deutschland: 514.600.000.000 kWh = 514 TWh + Schweden: 125.400.000.000 kWh = 125,4 TWh + Niederlande: 106.000.000.000 kWh = 106 TWh + + - Hardware-Bedarf: + Standard-Rechner sind zu langsam. --> spezielle Rechner + FPGA (Freely Programmable Gate Array, umprogrammierbare Hardware) + --> immer noch zu langsam + ASIC (Application-Specific Integrated Circuit, speziell angefertigte Hardware) + --> veralten, danach für nichts anderes einsetzbar + +Alternativen zu "Proof of Work": + - "Proof of Space" + - "Proof of Stake" + +ChatGPT: + + Proof of Space is a consensus algorithm used in blockchain systems, + specifically in cryptocurrencies. It is an alternative to the more commonly + known Proof of Work (PoW) and Proof of Stake (PoS) algorithms. + + In Proof of Space, the idea is to allocate storage space on a computer or + network in order to prove ownership and eligibility to participate in the + blockchain's consensus mechanism. Unlike Proof of Work, which requires miners + to solve complex mathematical puzzles, or Proof of Stake, which requires + users to show ownership of a certain amount of cryptocurrency, Proof of Space + relies on the concept of pre-allocated and unused storage space. + + Here's a simplified explanation of how Proof of Space works: + + 1. Initialization: Users set aside a certain amount of their available + storage space, such as hard drive or solid-state drive (SSD) capacity, to + participate in the consensus algorithm. This space is pre-allocated but + remains unused. + + 2. Proofs: To participate in the blockchain's consensus, users are required + to submit proofs that they possess the allocated space. These proofs + typically involve cryptographic computations, such as generating a specific + hash value based on the pre-allocated space. + + 3. Challenge and response: The blockchain network issues a challenge to the + participants, requesting a specific proof based on the allocated storage. + users respond to the challenge by providing the requested proof within a + given timeframe. + + 4. Verification: The network validates the provided proofs against the issued + challenge. If the proof is valid, the user is considered eligible to + participate in the consensus and may be selected to add the next block to the + blockchain. + + 5. Block creation: Participants who successfully provide valid proofs are + given the opportunity to create a new block in the blockchain. The + probability of being selected is proportional to the amount of allocated + storage space they possess. + + Proof of Space aims to be an energy-efficient alternative to Proof of Work, + as it relies on unused storage rather than computational power. It allows + participants to contribute to the consensus algorithm without the need for + significant computational resources. This makes it more accessible to a wider + range of users and potentially reduces the environmental impact associated + with traditional mining methods. + +--> Nicht wirklich falsch, aber konfus und sehr allgemein. + +Algorithmus: + - Im Speicher befinden sich vorberechnete Hash-Werte + (in einer Datenstruktur, in der man sie auffinden kann). + Vergleichbar: "Rainbow Table" + - Aufgabe: Finde zu einem gegebenen Hash die Daten. + --> Nicht eindeutig lösbar. Es gibt unendlich viele verschiedene Daten, + aber nur endlich viele verschiedene Hashes. + --> In vernünftiger Zeit nur dann lösbar, wenn man bereits vorher + zu vielen Daten die Hashes berechnet hat. + --> ... und die Ergebnisse abgespeichert hat. Proof of Space. + +Beispiel: + - Chia + +Nachhaltigkeitsaspekte: + - Verschwendung von Massenspeichern + +ChatGPT: + + Proof of Stake (PoS) is a consensus algorithm used in blockchain systems, + particularly in cryptocurrencies. It is an alternative to the + energy-intensive Proof of Work (PoW) algorithm commonly associated with + Bitcoin mining. + + In Proof of Stake, the ability to validate and create new blocks is based on + a user's ownership or "stake" in the cryptocurrency. Instead of miners + solving complex mathematical puzzles, block validators are chosen in a + deterministic manner, typically based on the number of coins they hold and + are willing to "stake" as collateral. + + Here's a simplified explanation of how Proof of Stake works: + + 1. Ownership of cryptocurrency: Users who want to participate in the + blockchain's consensus must hold and own a certain amount of the + cryptocurrency that powers the network. This ownership represents their stake + in the system. + + 2. Block validator selection: Validators are chosen to create and validate + new blocks based on their stake in the network. The higher the stake a user + has, the higher their chances of being selected to create the next block. + + 3. Block creation and validation: Selected validators create a new block by + placing a "bet" or "staking" a portion of their owned cryptocurrency as + collateral. This demonstrates their commitment to the network's security and + provides an incentive not to engage in malicious behavior. + + 4. Consensus and rewards: Validators' blocks are validated and agreed upon by + the network through a variety of mechanisms, such as voting or weighted + selection based on stake. If a block is deemed valid, the validator is + rewarded with transaction fees or newly minted cryptocurrency as an incentive + for their participation. + + 5. Security and penalties: Proof of Stake systems typically include + mechanisms to discourage malicious behavior. Validators who attempt to + manipulate the system or validate fraudulent transactions risk losing their + staked coins as penalties, which serves as a deterrent to maintain the + integrity of the network. + + Proof of Stake offers several advantages over Proof of Work, including + reduced energy consumption, as it eliminates the need for resource-intensive + mining operations. It also allows for faster block confirmation times and + potentially higher scalability, as the consensus process is more efficient. + However, it does introduce new challenges such as the "nothing-at-stake" + problem and the need for mechanisms to ensure decentralization and prevent + centralization of stake and power. + +Algorithmus: + - Man muß eine gewisse Anzahl an Coins besitzen. + - Diese setzt man bei einer "Wette" ein. + x Man wettet darauf, daß die anderen akzeptieren, daß man diese Transaktion + validiert. --> Eigentlich nicht. + - Details: + https://ethereum.org/en/developers/docs/consensus-mechanisms/pos/ + https://consensys.net/blog/blockchain-explained/what-is-proof-of-stake/ + - Es ist kein "Wetteinsatz", sondern ein "Pfand". + (Ethereum: man muß 32 ETH hinterlegen. 2020 waren das 6500 USD, + aktuell liegt der Kurs bei 1742 USD pro ETH. 32 * 1742 = 55744.) + - Ein deterministischer Algorithmus liefert Pseudozufallszahlen. + Damit wird, in Abhängigkeit des Einsatzes, ausgewählt, + wer den nächsten Block in die Blockchain einfügen darf + (und dafür in der Währung belohnt wird). + --> Alle Beteiligten können nachvollziehen, daß diese Pseuduzufallszahl + kommen mußte und weshalb gerade dieser Stakeholder ausgewählt wurde. + - Zusätzlich prüfen weitere Stakeholder, ob dabei alle Regeln eingehalten + wurden (und werden dafür ebenfalls (leicht) belohnt (oder (leicht) + bestraft, wenn sie dieser Verpflichtung nicht nachkamen (z.B. weil + sie gerade offline waren))). + - Wer sich nicht regelkonform verhält, wird (wirklich) bestraft. + - "Strafe" = Einbehalt eines Teils des Einsatzes, + in Extremfällen Ausschluß aus dem Validator-System +--> Wesentlich weniger energieaufwendig als Proof of Work + - Jemand, der sich Validator-Belohnungen holt, indem er einfach für alles + "vote"t, wird bestraft. + - 51%-Attacke immer noch möglich, aber aufwendiger als bei Proof of Work + +Beispiel: + - Ethereum hat von Proof of Work auf Proof of Stake umgestellt. + +Nachteil: Startproblem + - Wer besitzt am Anfang das Vermögen? + - Wer darf am Anfang validieren? +--> Ethereum: Start mit Proof of Work, danach Umstellung auf Proof of Stake. + +Welchen Vorteile haben Krypto-Währungen? + - Dezentralität + --> Unabhängigkeit von Autoritäten, z.B. Staaten + - Transparenz + --> inhärente Sicherheit (Einer Bank muß man vertrauen. + In einer Blockchain kann man bei Bedarf alles nachvollziehen.) + - Pseudonymität/Anonymität möglich + +Einsatzgebiete von Kryptowährungen + - Riesenaufwand. --> Für Alltagszahlungen ungeeignet. + - Geldwäsche (z.B.: Zahlungen an Ransomware-Erpresser) + - Spekulantentum + +Weiterführende Fragen + - Was für ein System wäre denn für Alltagszahlungen geeignet? + - Wofür lassen sich Blockchains sinnvoll einsetzen? + +Was für ein System wäre denn für Alltagszahlungen geeignet? + +Kriterien für digitale Währungen: + - Fälschungssicherheit: + Wie leicht bzw. schwer ist es, Währungseinheiten zu erzeugen, + obwohl man das eigentlich nicht darf? + - Unabhängigkeit + Wenn ich das Geld habe, bin ich dann wirtschaftlich handlungsfähig? + - Schnelle Bearbeitung + Wie lange dauert eine Transaktion? + - Zahlungsnachweis + Wie gut kann eine Transaktion im Nachhinein nachvollzogen werden? + - Anonymität + Muß man bei Zahlung persönliche Daten (z.B. Identität) preisgeben? + - Rückverfolgbarkeit illegaler Geschäfte + --> Gegenteil von Anonymität (?) + - Liquiditätssicherheit + Wenn mir jemand das Geld zahlt, kann ich mich darauf verlassen, + daß ich davon auch etwas habe? + - Ressourcenverbrauch + Wieviel ist an materiellen Ressourcen (einschließlich Energie) nötig, + um das System betreiben zu können? + - Personalbedarf + Wieviel ist an menschlichen Ressourcen nötig, + um das System betreiben zu können? + +Bargeld: + - Fälschungssicherheit: o + - Unabhängigkeit: ++ + - Schnelle Bearbeitung: - + - Zahlungsnachweis: -- + - Anonymität: ++ + - Rückverfolgbarkeit illegaler Geschäfte: -- + - Liquiditätssicherheit: ++ + - Ressourcenverbrauch: - + - Personalbedarf: -- + +BitCoin: + - Fälschungssicherheit: ++ + - Unabhängigkeit: ++ (dezentral) + - Schnelle Bearbeitung: - + - Zahlungsnachweis: ++ + - Anonymität: - + - Rückverfolgbarkeit illegaler Geschäfte: - + - Liquiditätssicherheit: - (Kursschwankungen während des Transaktionszeitraums) + - Ressourcenverbrauch: -- (hoher Energieverbrauch für Transaktionen, + hoher Hardware-Verbrauch für Herstellung von BitCoins) + - Personalbedarf: ++ (evtl. bis auf: überproportional viel Werbung) + +Kartensysteme: Debit- und Kredit-Karten, Lastschrift per Karte + - Fälschungssicherheit: + Debit- und Kredit-Karten von Banken: ++, von privat: ?, Lastschrift per Karte: - + - Schnelle Bearbeitung: ++ + - Zahlungsnachweis: Banken: ++, privat: ? + - Anonymität: -- ? (Debit- und Kredit-Karten: Identifikation über die Karten-Nr. + Wieviel Aussagekraft diese Karten-Nr. hat, ist nicht eindeutig klärbar.) + - Rückverfolgbarkeit illegaler Geschäfte: ++ (?) + - Liquiditätssicherheit: Sehr hoch, wenn man die Karte vorher auflädt + Debit- und Kredit-Karten von Banken: ++, von privat: ++, Lastschrift per Karte: - + - Ressourcenverbrauch: + + - Personalbedarf: + + +Entscheidungen durch KI treffen lassen? + - Die Entscheidungen können nur so gut sein wie die Trainingsdaten. + - Sind die Entscheidungen nachvollziehbar? +--> Der Begriff "Machine Learning" trifft den Sachverhalt besser + als "künstliche Intelligenz". diff --git a/20230612/test.c b/20230612/test.c new file mode 100644 index 0000000000000000000000000000000000000000..b8c07523bc613fbc78d49bb540077d61849c63a5 --- /dev/null +++ b/20230612/test.c @@ -0,0 +1,8 @@ +#include <stdio.h> + +int main (void) +{ + for (int i = 0; i < 256; i++) + printf ("Dies ist ein Test.%02x\n", i); + return 0; +}