private static List <string> SplitInSubLists(string valueToSplit, int splitCounter) { var _result = new List <string>(); var _length = valueToSplit.Length; var _half = _length / 2; if (_half > 1) { var _left = valueToSplit.Substring(0, _half); var _right = valueToSplit.Substring(_half); if (splitCounter >= 0) { _result.AddRange(GandingSecurity.SplitInSubLists(_left, splitCounter - 1)); _result.AddRange(GandingSecurity.SplitInSubLists(_right, splitCounter - 1)); } else { _result.Add(_left); _result.Add(_right); } } else { _result.Add(valueToSplit); } return(_result); }
public static string CreateBaseAccessCode() { var _pcName = Dns.GetHostName(); var _processorInfos = GandingSecurity.GetGroundInfosOfProcessor(); var _driveInfos = GandingSecurity.GetGroundInfosOflDrive(); //Verteilen var _orgVert = GandingSecurity.TotalitySplitt((_pcName + _processorInfos + _driveInfos).ToUpper()); //Finaler String var _verschluesselt = Encryption.EncryptString(_orgVert, "23BDA0CD");//"7498D128-23BD-4D80-A0CD-DFAAF12719BC"); //Verteilen var _vershVert = GandingSecurity.TotalitySplitt(_verschluesselt).ToUpper(); return(_vershVert); }
private static string TotalitySplitt(string baseStream) { var _listSplittered001 = GandingSecurity.SplitSplit(baseStream, 2); //String Wieder zusammen Setzten var _stream001 = new StringBuilder(); foreach (var _subList in _listSplittered001) { foreach (var _string in _subList) { _stream001.Append(_string); } } //Aufteilen in wieder kleinere GandingSecurity.SplitSplit(_stream001.ToString(), 4); //String Wieder zusammen Setzten var _stream002 = new StringBuilder(); foreach (var _subList in _listSplittered001) { foreach (var _string in _subList) { _stream002.Append(_string); } } //Aufteilen in wieder kleinere var _listSplittered003 = GandingSecurity.SplitSplit(_stream002.ToString(), 8); //Finaler string var _finalStream = new StringBuilder(); foreach (var _subList in _listSplittered003) { for (var _i = 0; _i < _subList.Count; _i += 6) { _finalStream.Append(_subList[_i]); } } return(_finalStream.ToString()); }
private static List <List <string> > SplitSplit(string stream, int firstSplit) { var _splitted = GandingSecurity.SplitInSubLists(stream, firstSplit); var _listSplittered = new List <List <string> >(); var _listsBerQuat = _splitted.Count / 4; for (var _i = 0; _i < 4; _i++) { var _partList = new List <string>(); _listSplittered.Add(_partList); var _toElements = System.Math.Min((_i + 1) * _listsBerQuat, _splitted.Count); for (var _y = _i * _listsBerQuat; _y < _toElements; _y++) { _partList.Add(_splitted[_y]); } } //Rotation der Sub-Sub Listen var _pl000 = _listSplittered[0]; var _pl001 = _listSplittered[1]; var _pl002 = _listSplittered[2]; var _pl003 = _listSplittered[3]; RotateLists(ref _pl000, ref _pl002); RotateLists(ref _pl001, ref _pl003); _listSplittered[0] = _pl000; _listSplittered[1] = _pl001; _listSplittered[2] = _pl002; _listSplittered[3] = _pl003; //Rotation der Sub Listen _listSplittered[0] = GandingSecurity.RotateInList(_pl000); _listSplittered[1] = GandingSecurity.RotateInList(_pl001); _listSplittered[2] = GandingSecurity.RotateInList(_pl002); _listSplittered[3] = GandingSecurity.RotateInList(_pl003); return(_listSplittered); }