Projet
Testez le report circulaire et le vide, rejetez les autres types et distinguez ce contrôle non cryptographique de l’authentification.
Calculez une somme Internet de 16 bits pour zéro à 65535 octets, en complétant le dernier octet impair par zéro.
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
Testez le report circulaire et le vide, rejetez les autres types et distinguez ce contrôle non cryptographique de l’authentification.
Comparez le comportement observé au résultat attendu. Si une vérification échoue, cherchez la cause avant de poursuivre les modifications.
Configurez un endpoint compatible OpenAI ou Anthropic avec son URL de base et une clé API si nécessaire. Testez la connexion. Un serveur local doit fonctionner ; les outils distants peuvent transmettre des données séparément.
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 est un logiciel de programmation assistée par IA sous Windows pour examiner des modifications dont la validité dépend de l’interprétation exacte des octets. Ouvrez le projet et décrivez le format que le code doit produire ou lire. Demandez au modèle d’examiner l’implémentation pertinente et ses appelants, en conservant dans la conversation des résultats connus indépendamment pour que la révision repose sur davantage qu’une explication plausible.
Une routine de somme de contrôle Internet est un exemple de demande utile. Fournissez un jeu de test court de longueur paire et un de longueur impaire, avec leurs résultats attendus, puis demandez comment le code traite le dernier octet et le repli des retenues. Une révision ciblée peut relier ces détails à votre chemin de construction des paquets sans supposer que l’implémentation du protocole environnant est correcte.
Examinez la correction proposée pour repérer les modifications de l’ordre des octets, du remplissage et de l’endroit où la somme de contrôle est stockée. Exécutez les tests du projet et comparez-les à une référence indépendante adaptée à votre format. En cas de divergence, conservez les octets d’entrée et les deux sorties afin que la prochaine discussion puisse étudier un cas reproductible.
Choisissez un modèle d’IA sans censure si votre point de terminaison compatible OpenAI ou Anthropic pris en charge en propose un. Ajoutez les identifiants requis et vérifiez les outils disponibles et la capacité de contexte. Le modèle et le fournisseur choisis déterminent toujours les restrictions ; ni cette appellation ni l’espace de travail ne démontrent qu’un paquet est valide ou sécurisé.
Calculer les valeurs attendues avec la même logique peut reproduire la même erreur. Utilisez une référence adaptée ou un jeu de test vérifié indépendamment et conservez les octets d’entrée exacts. La discussion avec le modèle et vos tests disposent ainsi d’une base de comparaison distincte.
Il doit rendre observable le traitement du dernier octet dans le résultat attendu. Demandez au modèle d’expliquer le remplissage et l’ordre des octets proposés, puis comparez la sortie. Un test portant uniquement sur le type du résultat manquera ces différences.
Non. Les autres champs, longueurs et règles du protocole nécessitent leurs propres vérifications. Examinez la modification de la somme de contrôle dans son périmètre et le code environnant de construction des paquets si nécessaire, sans traiter une valeur concordante comme une validation du message complet.
Examinez sa destination et ses effets avant exécution ; des jeux de test synthétiques locaux peuvent suffire. Un modèle local nécessite un serveur fonctionnant séparément et ne rend pas tous les outils connectés locaux, notamment ceux qui envoient ou inspectent des paquets.
CarryLoam · Mis à jour 2026-10-25