Guten Abend Itribute, 

was die Serie Mr. Robot🤖 meiner Ansicht nach auszeichnet ist ihre Nähe zur Realität. Normalerweise wird Hacking🕵️ in den Medien immer übertrieben unrealistisch dargestellt (siehe Matrix, Stargate Atlantis oder Independence Day). Viele Befehle, die Elliot eingibt, habe ich (beruflich) auch schon verwendet. Auch wird auf den oft vernachlässigten Aspekt des Social Engineerings (also wie "hacke ich Menschen" und welchen Einfluss haben sie auf die IT-Sicherheits-Infrastruktur eines Unternehmens🔐?) eingegangen.

Wenn Du Dich für das Thema interessiert, kann ich Dir folgende YouTube-Videos empfehlen.

https://youtube.com/watch?v=o28LVrm3HkU

https://youtube.com/watch?v=i8yBqNJK6eE

https://youtube.com/watch?v=oDs8uVV4JMw

Viele Grüße

André, savest8

...zur Antwort

Guten Abend Karsko, 

ich habe Dir eine kleine Methode geschrieben, mit der Du Deine Anforderung in JavaScript umsetzen kannst. Der Code ist hoffentlich hinreichend kommentiert.

function check_duplicate(array){
// Sortieren des Arrays.
var sorted_array = array.slice().sort();
// Duplikate.
var results = [];
for (var counter = 0; counter < array.length - 1; counter ++) {
if (sorted_array[counter + 1] == sorted_array[counter ]) {
// Duplikat dem Ergebnisarray hinzufügen.
results.push(sorted_array[counter]);
}
}
// Duplikate zurückgeben.
return results;
}

Taucht ein Element 2 mal auf, so wird es als ein Duplikat erkannt. Wenn ein Element mehr als 2 mal im Array enthalten ist, wird es erneut als Duplikat erkannt. Z.B.: [2,3,2,2] liefert als Ergebnis ein Array mit den Duplikaten [2,2], denn die 2 ist zweimal als Duplikat vorhanden.

Testen kannst Du diese Methode exemplarisch mit dem folgenden Code:

var array = [2, 5, 6, 7, 3, 2, 1, 5];
alert(has_duplicates(array));
if(check_duplicate(array).length > 0)
{
alert("Duplikate im Array: " + check_duplicate(array));
} else {
alert("Es gibt keine doppelten Elemente im Array!");
}

Wenn Du eine Boolean-Methode möchtest, die nur prüft, ob Duplikate vorhanden sind, empfehle ich folgende Erweiterung:

function has_duplicates(array){
return check_duplicate(array).length > 0;
}

Bei Rückfragen kannst Du Dich gerne wieder melden!

Viele Grüße

André, savest8

...zur Antwort

Guten Abend XUserZ, 

es gibt in der Tat einige Nachteile, die das Schichtenmodell mit sich bringt. Ein (etwas humoristisch gemeinter😉) Aspekt ist natürlich, dass Studenten die Schichten und ihre Beziehung zueinander lernen müssen. Daneben fallen mir spontan 3 weitere Nachteile ein:

  1. Durch die komplexe Layer-Struktur muss man mit Performanceeinbußen rechnen.
  2. Aufgrund der Schichtengrenzen kommt es zu Informationsverlusten, denn die Transportschicht kann z.B. die auf der Physikalischen Schicht verwendete Modulation nicht berücksichtigen.
  3. Für jede Schicht gibt es einen eigenen Verwaltungsoverhead und damit zusätzliches Datenaufkommen.

Viele Grüße

André, savest8

...zur Antwort

Guten Abend Oniichan1992,

wie Du bereits weißt, wird beim TCP-Verbindungsaufbau ein sogenannter 3-Way-✋-Shake genutzt, der wie folgt abläuft:

Client💻                                     🖥️Server
          ------------- SYN ------------->
         <--------- SYN, ACK --------- 
          ------------- ACK ------------->

Die RTT ist die Zeit, die ein kleines Paket📦 vom Sender zum Empfänger und zurück benötigt. Du benötigst also eine halbe RTT für SYN (Client zu Server), eine weitere halbe RTT für die Bestätigung (ACK) und SYN (Server zu Client) und schlussendlich eine weitere halbe RTT für das ACK-Flag vom Client zum Server. Das ergibt zusammen:

0.5RTT + 0.5RTT +0.5RTT = 1.5RTT

Wenn Du nach dem Verbindungsaufbau Daten senden möchtest, kannst Du im Prinzip eine halbe RTT von diesem Ergebnis subtrahieren, da mit dem letzten ACK bereits Daten mitgeschickt werden können. Der reine Verbindungsaufbau benötigt aber formal 1.5RTT.

Ein Sicherheitsproblem könnte SYN-Flooding (DoS) darstellen, bei dem der Client eine sehr hohe Anzahl an SYN-Paketen an den Server schickt, jedoch nie ein finales ACK-Paket. Der Server hingegen wartet jedoch einen Timeout ab und kann so überlastet werden, da zu viele halboffene Verbindungen existieren, die Netzressourcen (Speicher) benötigen.

Ich hoffe, dass ich Dir damit weiterhelfen konnte!

Viele Grüße 

André, savest8 

...zur Antwort

Guten Morgen Oniichan1992, 

die Kommunikationsgeschwindigkeit ist an dieser Stelle eine redundante Information. Benötigt werden lediglich die Angaben zur Berechnung der Propagation Delay (Ausbreitungsverzögerung über das Medium, hier Luft), da die Verarbeitungs- (Processing-) und Warteschlangenverzögerung (Queuing-Delay) vernachlässigbar klein sind.

Sei c=300.000 km/s die Lichtgeschwindigkeit (genauer wäre 299.992.458 km/s). Die Round Trip Time (RTT) ist die Zeit, die ein kleines Paket vom Sender zum Empfänger und wieder zurück benötigt. Zu berechnen ist folglich die doppelte Propagation Delay:

2· (40.000km / 300.000 km/s) ≈ 0,267s

Bei Rückfragen kannst Du Dich gerne wieder melden.

Viele Grüße

André, savest8

...zur Antwort

Hallo luisakatarina, 

das ist eine spannende Frage, die ich Dir gerne beantworte.

Zunächst einmal ist festzuhalten, dass man beim Diffie-Hellman-Schlüsselaustausch nicht zwangsläufig eine Primzahl verwenden muss. Voraussetzung ist lediglich, dass Du eine zyklische Gruppe G verwendest, d.h. G besitzt mindestens einen Erzeuger

Warum ist es nun aber dennoch ungünstig keine Primzahl zu verwenden? Das hängt damit zusammen, dass ein Angreifer🕵️ möglicherweise die Primzahlzerlegung der Nicht-Primzahl (praktisch) berechnen kann und dieses Wissen in Kombination mit dem Chinesischen Restsatz (Chinese Remainder Theorem, crt) nutzen kann, um das System zu knacken. Ein Beispiel dafür findest Du hier: http://bit.ly/2j5jFxz. Zudem gilt die Diffie-Hellman-Annahme (http://bit.ly/2jokfGC) für große Primzahlen.

Ich habe Dir zur Veranschaulichung noch einmal den Diffie-Hellman-Schlüsselaustausch als Bild dieser Antwort angefügt. Rechne das ganze vielleicht mal für ein nicht-primes p durch.

Ich hoffe, dass ich Dir mit dieser Antwort weiterhelfen konnte. Wenn Du Rückfragen hast, kannst Du sie mir gerne stellen.

Viele Grüße

André, savest8


...zur Antwort

Guten Morgen XUserZ, 

wie Du bereits weißt, handelt es sich bei Flow Control um die Fluss- und bei Congestion Control um die Überlastkontrolle

Mir fallen spontan zwei wichtige Unterschiede zwischen diesen beiden Funktionen im TCP-Protokoll ein:

  1. Flow Control findet direkt zwischen dem Sender und dem Empfänger statt: 🖥↔️🖥 Congestion Control findet hingegen innerhalb des Netzes statt.
  2. Während Flow Control lediglich eine Präventivmaßnahme ist, handelt es sich bei Congestion Control um eine direkte Maßnahme als Antwort auf Netzüberlast.

Ich hoffe, dass ich Dir mit dieser Frage helfen konnte!

Melde Dich gerne wieder, wenn Du Rückfragen hast oder Dir die Antwort noch nicht ausführlich genug war.

Viele Grüße

André, savest8

...zur Antwort

Hallo XUserZ,

es gibt einen sehr einfachen mathematischen Zusammenhang zwischen den Einheiten von (Z_m,·) und den Erzeugern von (Z_m,+):

Die Einheiten von (Z_m,·) sind die Erzeuger von (Z_m,+).

Nun sind lediglich die Einheiten von 30 (d.h. die zu 30 teilerfremden ganzen Zahlen k_i mit ggT(k_i,30)=1) zu bestimmen. Daraus folgt. Die Erzeuger sind gegeben durch die Menge {1,7,11,13,17,19,23,29}. Es gibt demzufolge 8 (φ(30)) Erzeuger. Weil es mindestens einen Erzeuger gibt, ist die Gruppe auch zyklisch, was direkt aus der Definition für zyklische Gruppen folgt.


Ich hoffe, dass ich Dir weiterhelfen konnte!

Viele Grüße

André, savest8

...zur Antwort

Hallo おにいちゃん1992, 

Du hast Recht. In der Japanischen Sprache gibt es verschiedene Begriffe, um "Ich" auszudrücken. Das beginnt bei わたし (Romaji: Watashi, Kanji: ), mit dem man geschlechtsunabhängig sich selbst bezeichnen kann. Es gibt jedoch auch die Möglichkeit  わたくし (Romaji: Watakushi) zu sagen, was jedoch in einigen Situationen eher arrogant rüberkommt. Zudem kann man als Junge/Mann den Begriff ぼく (Romaji: Boku) verwenden, was man im Deutschen zum Beispiel gar nicht kennt.

Das "Warum" ist sprachhistorisch zu suchen. In der japanischen Kultur ist der berufliche und gesellschaftliche Status von einem selbst und den Personen, mit denen man interagiert, von essentieller Bedeutung. Aus diesem Grund ist eine solche Vielfalt an situations- und statusbezogenen Umschreibungen für bestimmte Wörter zu verzeichnen.

Ich hoffe, dass ich Dir weiterhelfen konnte!

さよなら

André, savest8

...zur Antwort

Hallo StudentHN, 

der Trick ist hier, den Zähler und den Nenner auszuschreiben. "Groß PI" ist das Produktzeichen. Das ist so ähnlich wie das Summenzeichen. Allerdings wird statt addiert multipliziert.

Der Zähler bedeutet: "Multipliziere alle Zahlen von 1 bis n."
Der Nenner bedeutet: "Multipliziere alle Zahlen von 1 bis n+1."

Kürzt man die Faktoren gegenseitig raus, so erhält man im Nenner nur noch den Term n+1. Ich habe Dir zur Übersicht die ausgeschriebene Formel als Bild dieser Antwort beigefügt. 

Viele Grüße

André, savest8

...zur Antwort

Hallo StudentHN, 

Wirtschaftsmathematik ist nicht mein Spezialgebiet, aber ich versuche es trotzdem einmal:

a.) Eine ähnliche Aufgabe findest Du unter: http://wirtschaftslexikon.gabler.de/Archiv/3546/differenzial-dy-v6.html. Die Kostenänderung der Funktion wird exakt wie folgt berechnet: f(11)-f(10) = 4271-4100=171, wie von Dir berechnet👍 D.h. 171 GE beträgt die Kostenänderung.

b.) Im zweiten Teil der Aufgabe ist ja gefordert, dass man die Kostenänderung approximativ mittels des Differenzials berechnen soll. Wir leiten die Funktion also ab und erhalten: f'(x)=2x+150. Die Approximation mittels Differential wird wie folgt berechnet: f'(x_0)*(x-x_0). x_0 ist hier der ursprüngliche Wert 10 und x der, auf den die Kosten ansteigen. D.h. man erhält eine Kostenänderung von (2*10+150)*(11-10) = 170. Die Approximation ist ziemlich gut, da man nur um eine GE vom exakten Ergebnis abweicht. 

Die Skizze und die Interpretation bekommst Du alleine hin, oder? 

Ich hoffe sehr, dass ich Dir weiterhelfen konnte!

Viele Grüße

André, savest8

...zur Antwort
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.