ForHosting KIT · Outils pour développeurs

Somme System V

Le mot hello donne la somme 532 et 1 bloc, exactement ce qu'affiche sum -s sous Unix. Collez un texte pour retrouver le chiffre classique de System V, et non la variante BSD, dans vos scripts hérités, votre documentation et vos cours. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
Texte
hello
Vous obtenez
Somme de contrôle
532
Blocs
1
Nombre d'octets
5
Algorithme
System V sum (sum -s)

System V sum est l'algorithme alternatif de somme de contrôle de fichiers affiché par l'utilitaire Unix classique sum lorsque vous passez l'option -s, la voie utilisée sur de nombreux systèmes dérivés de System V et toujours disponible dans GNU coreutils. Contrairement aux hachages cryptographiques, il produit un résidu compact de seize bits plus un décompte de blocs de cinq cent douze octets, conçu pour des contrôles d'intégrité rapides sur de courtes charges utiles et des scripts hérités qui analysent encore la sortie de sum. Cette capacité accepte une chaîne de texte, l'encode en UTF-8, exécute les mêmes étapes d'accumulation et de repli que sum -s applique aux octets d'un fichier, et renvoie la somme de contrôle avec le nombre de blocs et la longueur en octets. L'entrée vide est acceptée volontairement et signalée clairement : checksum zéro, zéro bloc et un avis explicite de vide pour que l'automatisation ne confonde jamais une charge blanche avec un champ manquant.

Ce qu'est System V sum et en quoi il diffère de BSD sum et des digests modernes

L'algorithme System V accumule chaque octet d'entrée dans un total courant, puis replie ce total sur seize bits en ajoutant la moitié haute à la moitié basse deux fois, de sorte que le débordement du premier repli soit absorbé par le second. Le résultat est un entier non négatif dans la plage de zéro à soixante-cinq mille cinq cent trente-cinq, historiquement imprimé comme checksum décimal à côté d'un décompte de blocs.

Les blocs ne sont pas la taille logique d'enregistrement d'une base de données ; ce sont des unités de cinq cent douze octets arrondies vers le haut, de sorte qu'une chaîne de cinq octets compte encore comme un bloc et qu'un fichier vide compte comme zéro. Ce profil est exactement celui que GNU sum implémente avec sum -s et que de nombreux scripts shell extraient encore lorsqu'ils comparent deux copies d'un petit fichier sur d'anciens hôtes Unix.

Il est délibérément faible aux normes modernes : les collisions sont faciles et il ne remplace ni SHA-256, ni CRC-32, ni l'authentification cryptographique de messages. Son rôle est l'interopérabilité avec sum -s, avec la documentation d'archives citant des checksums System V, et avec le matériel pédagogique qui contraste l'algorithme BSD de rotation et d'addition avec la somme simple System V. Utilisez ce point de terminaison lorsque vous avez besoin de ce résidu précis, pas lorsque vous avez besoin d'une résistance aux collisions.

Quand la somme System V reste utile

Les projets de migration d'héritage recalculent les valeurs sum -s en déplaçant archives shell et distributions de l'ère disquette vers le stockage d'objets, en épinglant checksums et décomptes de blocs de référence en intégration continue pour qu'une réécriture moderne corresponde encore au résidu historique. Les équipes embarquées et industrielles qui ont hérité de contrôles d'intégrité de style System V dans des notes de protocole peuvent vérifier de courtes chaînes de commande sans installer coreutils complet sur chaque image de build.

Les éducateurs et sites de documentation classés pour System V sum ou checksum sum -s obtiennent une calculatrice en direct dont le chemin gratuit du navigateur correspond octet pour octet au chemin d'automatisation, y compris le cas limite du fichier vide qui déroute les étudiants la première fois qu'ils exécutent sum -s sur /dev/null ou un fichier touch vide.

Les auteurs de contenu sur les algorithmes BSD versus System V peuvent montrer les deux résidus côte à côte en associant cette capacité à un chemin BSD séparé lorsqu'il est disponible, sans prétendre qu'aucun des deux soit un hachage cryptographique. Une validation échouée ne consomme pas le solde.

Épinglez hello égal à cinq cent trente-deux avec un bloc et vide égal à zéro avec zéro bloc dans les suites de régression, et vous obtenez des checksums historiques reproductibles pour scripts, démos LMS et workers de bord sans déployer un espace utilisateur Unix uniquement pour appeler sum.

Vérification héritée de sum -s

Recalculez les checksums System V et les décomptes de blocs de 512 octets pour de courtes charges textuelles afin que les outils modernes correspondent à la sortie historique de sum -s dans les scripts de migration et d'audit.

Goldens CI pour entrées vides et courtes

Affirmez checksum 0 et blocks 0 pour le texte vide, et épinglez des vecteurs connus tels que hello → 532 / 1 bloc, afin que les refactorisations ne modifient pas silencieusement l'algorithme.

Enseigner BSD versus System V sum

Montrez aux étudiants le résidu System V et le décompte de blocs à côté de la documentation de l'algorithme alternatif de sum, avec un avis clair d'entrée vide pour le cas de longueur nulle.

Est-ce la même chose que sum -s ?

Oui. Cela implémente l'algorithme alternatif System V utilisé par sum -s : somme d'octets, deux replis 16 bits et blocs ceil(length/512). Ce n'est pas l'algorithme BSD par défaut de sum.

System V sum est-il un hachage sécurisé ?

Non. C'est un checksum hérité de 16 bits pour l'interopérabilité avec sum -s et l'enseignement. Utilisez des digests cryptographiques tels que SHA-256 lorsque vous avez besoin d'une résistance aux collisions.

Comment se calcule la somme System V ?

Chaque octet du texte est ajouté à un total cumulé. Ce total est ensuite replié sur 16 bits en ajoutant sa moitié haute à sa moitié basse, deux fois, pour que le dépassement du premier repli soit absorbé par le second. Le résultat va de 0 à 65535.

Que signifie le nombre de blocs ?

C'est le nombre d'unités de 512 octets qu'occupe le texte, arrondi au supérieur. Un mot de cinq lettres comme hello compte pour 1 bloc, et un texte vide donne 0 bloc et une somme de 0.

Comment sont comptés les accents et les émojis ?

Le texte est d'abord converti en octets UTF-8 et chaque octet entre dans le total. Un caractère qui occupe plusieurs octets, comme une lettre accentuée ou un émoji, ajoute donc plusieurs valeurs à la somme.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/enc/sysv-sum

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/enc/sysv-sum \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello"}'
{
  "text": "hello"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.sysv_sum",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Ce qu'est System V sum et en quoi il diffère de BSD sum et des digests modernes

Lorsque du texte vide arrive, le résidu est zéro et le décompte de blocs est zéro, ce qui correspond à sum -s sur un fichier vide et est exposé via le champ empty_notice pour que les clients affichent un statut lisible sans inventer leur propre formulation.

Contrat d'entrée, champs de réponse et texte vide versus texte manquant

La chaîne est encodée en UTF-8 et chaque octet résultant entre dans l'accumulateur System V ; les caractères Unicode multi-octets contribuent chaque unité de code UTF-8, pas un seul point de code. Exemple : les cinq lettres ASCII hello produisent le checksum cinq cent trente-deux, un bloc et cinq octets, en accord avec sum -s. Gardez des charges modestes dans le navigateur ; l'algorithme est linéaire en longueur d'octets et entièrement en mémoire, sans réseau ni système de fichiers. Envoyez en POST un corps JSON avec le champ chaîne obligatoire text. Les clés alias data, payload, value, input et content sont acceptées pour la même charge utile afin que générateurs et formulaires réutilisent des noms de champs existants. Une chaîne vide est une entrée valide : le gestionnaire renvoie un succès avec checksum zéro, blocks zéro, byte_count zéro, empty true et empty_notice expliquant qu'une entrée vide a été détectée. Un champ text totalement absent, une valeur null ou un objet non chaîne échoue avec invalid_input et un message qui nomme le champ manquant ou invalide ; ces échecs ne sont pas facturés et ne doivent pas être confondus avec le chemin de succès sur entrée vide. En cas de succès le corps inclut toujours checksum comme résidu de seize bits, blocks comme décompte de blocs de cinq cent douze octets, byte_count de l'encodage UTF-8, empty comme booléen, algorithm avec l'étiquette fixe System V sum (sum -s) et block_size cinq cent douze. Le empty_notice optionnel n'apparaît que lorsque empty est true, selon la règle d'omettre les champs optionnels plutôt que de les mettre à null.

Où une API de checksum System V sum apporte de la valeur

Comme l'implémentation est pure parse de niveau A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle ni réseau sortant.

Comment calculer un checksum System V sum ?

Envoyez un champ chaîne JSON text (UTF-8). L'API renvoie checksum (0–65535), blocks de 512 octets, byte_count, empty et algorithm System V sum (sum -s).

Que se passe-t-il avec une entrée vide ?

La chaîne vide est valide. Vous obtenez checksum 0, blocks 0, byte_count 0, empty true et empty_notice décrivant l'entrée vide. text manquant est invalid_input et n'est pas facturé.

Combien coûte l'outil de checksum System V sum ?

L'outil navigateur est gratuit. Les requêtes API utilisent le solde prépayé KIT à $0.002 par appel réussi ; l'entrée invalide n'est pas facturée.

Consulter la documentation complète du KIT →