Projekt
Teste umlaufende Überträge und leere Eingabe, lehne andere Typen ab und trenne die nichtkryptografische Prüfung von Authentifizierung.
Berechne eine 16-Bit-Internetprüfsumme für null bis 65535 Bytes mit Nullauffüllung des letzten ungeraden Bytes.
def internet_checksum(data):
if type(data) is not bytes or len(data) > 65535:
raise ValueError("checksum.bytes")
total = 0
for i in range(0, len(data), 2):
total += (data[i] << 8) | (data[i+1] if i+1 < len(data) else 0)
while total >> 16:
total = (total & 65535) + (total >> 16)
return (~total) & 65535
Teste umlaufende Überträge und leere Eingabe, lehne andere Typen ab und trenne die nichtkryptografische Prüfung von Authentifizierung.
Vergleichen Sie das tatsächliche Verhalten mit dem erwarteten Ergebnis. Klären Sie fehlgeschlagene Prüfungen vor weiteren Änderungen.
Richten Sie einen OpenAI-kompatiblen oder Anthropic-Endpunkt mit Basis-URL und gegebenenfalls API-Schlüssel ein. Testen Sie die Verbindung. Ein lokaler Modellserver muss laufen; entfernte Werkzeuge können Daten separat übertragen.
def internet_checksum(data):
if type(data) is not bytes or len(data) > 65535:
raise ValueError("checksum.bytes")
total = 0
for i in range(0, len(data), 2):
total += (data[i] << 8) | (data[i+1] if i+1 < len(data) else 0)
while total >> 16:
total = (total & 65535) + (total >> 16)
return (~total) & 65535
CarryLoam ist KI-Programmiersoftware für Windows zur Untersuchung von Änderungen, deren Korrektheit von exakter Byteinterpretation abhängt. Öffnen Sie das Projekt und beschreiben Sie das Format, das der Code erzeugen oder verarbeiten muss. Lassen Sie das Modell Implementierung und Aufrufer prüfen und halten Sie unabhängig bekannte Ergebnisse im Gespräch fest, damit die Prüfung mehr als eine plausible Erklärung als Grundlage hat.
Eine Routine für Internet-Prüfsummen ist eine hilfreiche Beispielaufgabe. Geben Sie einen kurzen Testfall gerader Länge und einen ungerader Länge mit erwarteten Ergebnissen an und fragen Sie, wie der Code das letzte Byte und das Zurückfalten von Überträgen behandelt. Eine gezielte Prüfung kann diese Details mit Ihrer Paketerzeugung verbinden, ohne die Korrektheit der umgebenden Protokollimplementierung vorauszusetzen.
Prüfen Sie den vorgeschlagenen Patch auf Änderungen an Byte-Reihenfolge, Auffüllung und der Stelle, an der die Prüfsumme gespeichert wird. Führen Sie Ihre Projekttests aus und vergleichen Sie mit einer für Ihr Format geeigneten unabhängigen Referenz. Bei Abweichungen bewahren Sie Eingabebytes und beide Ausgaben auf, damit die nächste Besprechung einen reproduzierbaren Fall untersuchen kann.
Wählen Sie ein unzensiertes KI-Modell, sofern es über Ihren unterstützten OpenAI-kompatiblen oder Anthropic-Endpunkt angeboten wird. Ergänzen Sie erforderliche Zugangsdaten und prüfen Sie verfügbare Werkzeuge und Kontextkapazität. Gewähltes Modell und Anbieter bestimmen weiterhin Einschränkungen; weder die Bezeichnung noch der Arbeitsbereich belegt, dass ein Paket gültig oder sicher ist.
Mit derselben Logik berechnete Erwartungen können denselben Fehler wiederholen. Verwenden Sie eine geeignete Referenz oder unabhängig geprüfte Testdaten und bewahren Sie die exakten Eingabebytes auf. Das bietet Modellbesprechung und Tests eine eigenständige Vergleichsgrundlage.
Er sollte die Behandlung des letzten Bytes im erwarteten Ergebnis sichtbar machen. Lassen Sie das Modell die vorgeschlagene Auffüllung und Byte-Reihenfolge erklären und vergleichen Sie dann die Ausgabe. Ein Test nur des Ergebnistyps übersieht diese Unterschiede.
Nein. Andere Felder, Längen und Protokollregeln brauchen eigene Prüfungen. Prüfen Sie die Prüfsummenänderung in ihrem Umfang und bei Bedarf die umgebende Paketerzeugung, ohne einen passenden Wert als Validierung der vollständigen Nachricht zu behandeln.
Prüfen Sie vor der Ausführung Ziel und Auswirkungen; künstliche lokale Testfälle können ausreichen. Ein lokales Modell benötigt einen separat laufenden Server und macht nicht jedes verbundene Werkzeug lokal, auch keine Werkzeuge zum Senden oder Untersuchen von Paketen.
CarryLoam · Aktualisiert 2026-10-25