Eine aufbereitete Darstellung der Quelle

 
     
 
 
Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 

Benutzer

SSL cifs_arc4.c   Sprache: unbekannt

 
// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Cryptographic API
 *
 * ARC4 Cipher Algorithm
 *
 * Jon Oberheide <jon@oberheide.org>
 */


#include <linux/module.h>
#include "arc4.h"

MODULE_DESCRIPTION("ARC4 Cipher Algorithm");
MODULE_LICENSE("GPL");

int cifs_arc4_setkey(struct arc4_ctx *ctx, const u8 *in_key, unsigned int key_len)
{
 int i, j = 0, k = 0;

 ctx->x = 1;
 ctx->y = 0;

 for (i = 0; i < 256; i++)
  ctx->S[i] = i;

 for (i = 0; i < 256; i++) {
  u32 a = ctx->S[i];

  j = (j + in_key[k] + a) & 0xff;
  ctx->S[i] = ctx->S[j];
  ctx->S[j] = a;
  if (++k >= key_len)
   k = 0;
 }

 return 0;
}
EXPORT_SYMBOL_GPL(cifs_arc4_setkey);

void cifs_arc4_crypt(struct arc4_ctx *ctx, u8 *out, const u8 *in, unsigned int len)
{
 u32 *const S = ctx->S;
 u32 x, y, a, b;
 u32 ty, ta, tb;

 if (len == 0)
  return;

 x = ctx->x;
 y = ctx->y;

 a = S[x];
 y = (y + a) & 0xff;
 b = S[y];

 do {
  S[y] = a;
  a = (a + b) & 0xff;
  S[x] = b;
  x = (x + 1) & 0xff;
  ta = S[x];
  ty = (y + ta) & 0xff;
  tb = S[ty];
  *out++ = *in++ ^ S[a];
  if (--len == 0)
   break;
  y = ty;
  a = ta;
  b = tb;
 } while (true);

 ctx->x = x;
 ctx->y = y;
}
EXPORT_SYMBOL_GPL(cifs_arc4_crypt);

Messung V0.5 in Prozent
C=95 H=93 G=93

[Verzeichnis aufwärts0.592unsichere VerbindungÜbersetzung europäischer Sprachen durch Browser2026-06-08]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Open Source Software

     Quellcodebibliothek
     Eigene Quellcodes
     Fremde Quellcodes
     Suchen

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Statistik
#Sources=277311
#Domains=752002