English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Implementierungsmethoden zur Verbergence sensibler Informationen wie Handynummer und E-Mail in C#

Intro

Wenn man ein Projekt macht, gibt es einige sensible Informationen auf der Seite, die mit "*Einige wichtige Informationen zu verstecken, daher werde ich einen allgemeinen Methoden schreiben.

Lassen Sie uns das tun!

Methode 1: Bestimmt die Anzahl der linken und rechten Zeichen

Methode 1.1 Mittleren*Die Anzahl hängt von der tatsächlichen Länge ab

/// <summary>
/// Versteckte sensible Informationen
/// </summary>
/// <param name="info">Informationseinheit</param>
/// <param name="left">Anzahl der behaltenen Zeichen auf der linken Seite</param>
/// <param name="right">Anzahl der behaltenen Zeichen auf der rechten Seite</param>
/// <param name="basedOnLeft">Wird die Länge abnormal, wird links angezeigt 
/// <code>true</code>/code>Zeige links, <code>false</code>/code>Zeige rechts
/// </param>
/// <returns></returns>
public static string HideSensitiveInfo(string info, int left, int right, bool basedOnLeft=true)
{
if (String.IsNullOrEmpty(info))
{
return "";
}
StringBuilder sbText = new StringBuilder();
int hiddenCharCount = info.Length - left - right;
if (hiddenCharCount > 0)
{
string prefix = info.Substring(0, left), suffix = info.Substring(info.Length - right);
sbText.Append(prefix);
for (int i = 0; i < hiddenCharCount; i++)
{
sbText.Append("*");
}
sbText.Append(suffix);
}
else
{
if (basierendAufLinks)
{
if (info.Length > left && left > 0)
{
sbText.Append(info.Substring(0, left) + "****");
}
else
{
sbText.Append(info.Substring(0, 1) + "****");
}
}
else
{
if (info.Length > right && right > 0)
{
sbText.Append("****" + info.Substring(info.Length - right));
}
else
{
sbText.Append("****" + info.Substring(info.Length - 1))
}
}
}
return sbText.ToString();
}

Methode 1.2 : Der mittlere Teil*Anzahl fest

/// <summary>
/// Versteckte sensible Informationen
/// </summary>
/// <param name="info">Informationseinheit</param>
/// <param name="left">Anzahl der behaltenen Zeichen auf der linken Seite</param>
/// <param name="right">Anzahl der behaltenen Zeichen auf der rechten Seite</param>
/// <param name="basedOnLeft">Wird die Länge abnormal, wird links angezeigt 
/// <code>true</code>/code>Zeige links, <code>false</code>/code>Zeige rechts
/// <returns></returns>
public static string HideSensitiveInfo1(string info, int left, int right, bool basedOnLeft = true)
{
if (String.IsNullOrEmpty(info))
{
return "";
}
StringBuilder sbText = new StringBuilder();
int hiddenCharCount = info.Length - left - right;
if (hiddenCharCount > 0)
{
string prefix = info.Substring(0, left), suffix = info.Substring(info.Length - right);
sbText.Append(prefix);
sbText.Append("****");
sbText.Append(suffix);
}
else
{
if (basierendAufLinks)
{
if (info.Length > left && left >0)
{
sbText.Append(info.Substring(0, left) + "****");
}
else
{
sbText.Append(info.Substring(0, 1) + "****");
}
}
else
{
if (info.Length > right && right>0)
{
sbText.Append("****" + info.Substring(info.Length - right));
}
else
{
sbText.Append("****" + info.Substring(info.Length - 1))
}
}
}
return sbText.ToString();
}

Methode 2 : "*"Anzahl fest, eingestellt auf4Stück, im Verhältnis zur Gesamtlänge der Information gewählt, Standardmäßig links und rechts je1/3

/// <summary>
/// Versteckte sensible Informationen
/// </summary>
/// <param name="info">Information</param>
/// <param name="sublen">Die Gesamtlänge der Information im Verhältnis zur linken (oder rechten) Teilzeichenkette</param>
/// <param name="basierendAufLinks">Wenn die Länge anomalous ist, ob links angezeigt wird, Standardwert true, Standard ist links angezeigt</param>
/// <code>true</code>/code>Zeige links, <code>false</code>/code>Zeige rechts
/// <returns></returns>
public static string VersteckeEmpfindlicheInfo(string info, int sublen = 3, bool basierendAufLinks = true)
{
if (String.IsNullOrEmpty(info))
{
return "";
}
if (sublen<=1)
{
sublen = 3;
}
int subLength = info.Length / sublen;
if (subLength > 0 && info.Length > (subLength*2) )
{
string Prefix = info.Substring(0, subLength), Suffix = info.Substring(info.Length - subLength);
return Prefix + "****" + Suffix;
}
else
{
if (basierendAufLinks)
{
string Prefix = subLength > 0 &&63; info.Substring(0, subLength) : info.Substring(0, 1);
return Prefix + "****";
}
else
{
string Suffix = subLength > 0 &&63; info.Substring(info.Length-subLength) : info.Substring(info.Length-1);
return "****"+Suffix;
}
}
}

Erweiterung

Telefonnummer 1

/// <summary>
/// Verstecke Telefonnummer-Details
/// </summary>
/// <param name="telefon">Telefonnummer</param>
/// <param name="links">Linke Zeichenbehalte</param>
/// <param name="rechts">Rechte Zeichenbehalte</param>
/// <returns></returns>
public static string VersteckeTelDetails(string telefon, int links = 3, int rechts = 4)
{
return VersteckeEmpfindlicheInfo(telefon, links, rechts);
}

Die Testergebnisse lauten wie folgt:

Telefonnummer 2

/// <summary>
/// Verstecke Telefonnummer-Details
/// </summary>
/// <param name="telefon">Telefonnummer</param>
/// <param name="links">Linke Zeichenbehalte</param>
/// <param name="rechts">Rechte Zeichenbehalte</param>
/// <returns></returns>
public static string VersteckeTelDetails(string telefon, int links = 3, int rechts = 4)
{
return VersteckeEmpfindlicheInfo1(Telefon, links, rechts);
}

Die Testergebnisse lauten wie folgt:

E-Mail-Adresse

/// <summary>
/// Verbergen Sie die Details der rechten Maustaste
/// </summary>
/// <param name="email">E-Mail-Adresse</param>
/// <param name="left">Anzahl der behaltenen Zeichen am Anfang der E-Mail-Adresse, Standardwert ist3</param>
/// <returns></returns>
public static string HideEmailDetails(string email, int left = 3)
{
if (String.IsNullOrEmpty(email))
{
return "";
}
if (System.Text.RegularExpressions.Regex.IsMatch(email, @"\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"))//Wenn es sich um eine E-Mail-Adresse handelt
{
int suffixLen = email.Length - email.LastIndexOf('@');
return HideSensitiveInfo(email, left, suffixLen, false);
}
else
{
return HideSensitiveInfo(email);
}
}

Die Testergebnisse lauten wie folgt:

Nachfolgend finden Sie die von mir vorgestellten Methoden zur Verbergence sensibler Informationen wie Telefonnummer und E-Mail-Adresse in C#. Ich hoffe, sie sind Ihnen hilfreich. Wenn Sie Fragen haben, hinterlassen Sie bitte einen Kommentar, ich werde Ihnen zeitnah antworten. Ich danke Ihnen sehr für Ihre Unterstützung für die Website呐喊教程!

Erklärung: Der Inhalt dieses Artikels wurde aus dem Internet übernommen und gehört dem Urheberrecht des jeweiligen Autors. Der Inhalt wurde von Internetnutzern selbstständig bereitgestellt und hochgeladen. Diese Website besitzt keine Eigentumsrechte und hat den Inhalt nicht von Hand bearbeitet. Sie übernimmt keine rechtlichen Verantwortlichkeiten. Wenn Sie verdächtige urheberrechtliche Inhalte entdecken, freuen wir uns über eine E-Mail an: notice#oldtoolbag.com (Bitte ersetzen Sie # durch @ beim Senden einer E-Mail zur Meldung von Verstößen und fügen Sie relevante Beweise bei. Bei nachgewiesener Täuschung wird diese Website den涉嫌侵权内容 sofort löschen.

Möchten Sie auch mögen