Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

(batch) Quellcode soll nicht lesbar sein / verschlüsselung eines variablen namens

Frage Entwicklung Batch & Shell

Mitglied: Phlegma

Phlegma (Level 1) - Jetzt verbinden

22.01.2007, aktualisiert 27.02.2007, 11753 Aufrufe, 32 Kommentare

nAbend,
habe batchkompiler aber die exe die entsteht erstellt auch nur wieder die batch...
ich möchte verhindern dass man die batch lesen kann

also ich kopiere meine komplierte batch (exe) in temp
und führe sie aus...
dadurch wird meine install.bat erstellt und ausgeführt allerdings wird die .bat datei nichtmehr gelöscht auch nicht wenn die batch erfolgreich mit exit endet

ist es möglich die batch noch während des vorgangs zu löschen? del %0 ? (bzw del install.bat)
oder gibt es eine andere möglichkeit die auch mit einschließt dass die batch gelöscht wird wenn sie per x button abgebrochen wird?

2. (EDIT)
verschlüsselung eines namens
abcd1234 soll zu bcde0123 umgewandelt werden per batch und in einer anderen(/selben) batch wieder entschlüsselt werden können..
wozu? anlegen von ordnern die nicht per suche nach dem namen der datei gefunden werden können
beispiel: bla1.txt wird zu cmb0.txt

dafür geibt es doch bestimmt diese wunderbare for schleife mit der ich noch nicht ganz klar komme...


wenn du das liest und dir etwas einfällt poste doch bitte!
freu mich auf hilfe, Ph
32 Antworten
Mitglied: Biber
22.01.2007 um 21:08 Uhr
Na ja, Phlegma,

Du kannst dich da nur annähern....
Du weißt von der erzeugten temporären Klartext-Batchdatei doch,
- wo sie ist (im %temp%- oder noch genauer im %myFiles%-Verzeichnis)
- den Namen (2 bestimmte Buchstaben und 4 Ziffern) und
- die Endung .bat (oder .cmd) nach Deinen Vorgaben.
- und auch noch das Hidden-Attribut
Also kannst Du doch am Ende als letzten Befehl abfeuern
del /q /Ah "%myfiles%\bf????.bat"

Die Wahrscheinlichkeit, dass Du dabei eine "falsche", ganz ganz furchtbar wertvolle Datei bf????.bat im %temp%-Verzeichnis wegknallst, die der Anwender dort versteckt anlegt hat, ist so gering wie ein Wahlsieg der SPD.

Anmerkungen:
Dass die temporäre Datei nach ordnungsgemäßer Abarbeitung der *.exe nicht gelöscht wird, kann ich nicht bestätigen.
Im Normalfall ist die Klartext-Batch hinterher durch die .exe gelöscht.

Wermutstropfen:
Was Du nicht sinnvoll verhindern kannst, ist das Verbleiben von einer lesbaren *.bat,
- wenn kein Rücksprung zur .Exe-Datei erfolgt (die Batch hängt. SEHR unwahrscheinlich)
- wenn in der Batch ein "pause"-Befehl steht und dieser vom Anwender genutzt wird, die Batchdatei zu lesen
- wenn die Batchdatei läuft und der Anwender die Exe-Datei per Taskkill abschießt.

Aber langsam machst Du uns neugierig: was hast Du denn für nobelpreisverdächtige Zeilen in Deiner Batch?
Wenn es so hochsensibel ist, dann solltest Du lieber ein paar Zeilen in irgendetwas zusammenbraten, was sich wirklich kompilieren lässt... C oder so.

Will damit nur sagen: Behalte im Auge, welchen Aufwand Du betreiben willst, Deinen Source zu schützen.
Für einen durchschnittlich bösartigen Endanwender sollte das oben geschriebene mehr als ausreichen.
Und ein richtig bösartiger Anwender dekompiliert Dir ohnehin Deine .exe.

Gruß
Biber
Bitte warten ..
Mitglied: Phlegma
22.01.2007 um 22:10 Uhr
okok ... war nur interesse... stimmt so toll ist der inhalt gar nicht...
wollt nur rausholen was möglich ist ;)
trotzdem vielen dank...
ich weiß nich was ich ohne dich machen würde

ach und was hast du gegen die SPD? :D

und die namen verschlüsselung? niemand ne idee?

Gruß, Ph
Bitte warten ..
Mitglied: Phlegma
24.01.2007 um 20:27 Uhr
.... wieso antwortet mir neuerdings niemand mehr?
.............
Bitte warten ..
Mitglied: Phlegma
26.01.2007 um 17:26 Uhr
ich brauch nen batch der a zu b; b zu c; d zu e usw macht zudem 1 zu 0; 0 zu 9; 9 zu 8 usw...

geht dass nicht?
wenn es nicht geht hätt ich das auch gerne gewusst (@ biber)...

ich hatte schon ne richtig gute meinung von diesem forum bekommen....
na vllt liegts an mir, ich stell die falschen fragen...

Mit freundlichen Grüßen, Ph
Bitte warten ..
Mitglied: miniversum
26.01.2007 um 20:40 Uhr
Frag mal genauer..
Mit es soll 1 zu 0; 0 zu 9 gemach twerden it ncith viel anzufangen udn zu helfen.
Wo kommen die zahlen den her?

Du kannst Dinge ersetzen in Variabeln.

set var=abc123
echo var
set var=%var:123=xyz%
echo var

miniversum
Bitte warten ..
Mitglied: Phlegma
26.01.2007 um 20:58 Uhr
im grunde soll ein ganzer, recht beliebiger text verschlüsselt werden können...
nur brauche ich keinen ganzen text, ich denke das würde wenn überhaupt per batch auch zulange dauern....
inwiefern verschlüsselt sollte in meinen bisherigen posts klar sein (hoff ich)

[einzelne variabelteile zu ersetzen wird leider nicht ausreichen bei varierenden namen]

trotzdem danke!, Ph
Bitte warten ..
Mitglied: miniversum
27.01.2007 um 11:57 Uhr
doch das sollte dan ja gehen. du kanst da sja hinterinander hängen. Mußt nur auf die reihenfilge achten.
Dein Text steht in einer Variablen (var).
jetzt kanst du dann

set var=abc123
echo Orginal text:%var%
set var=%var:3=4%
set var=%var:1=3%
set var=%var:4=1%
echo Verschlüsselter Text:%var%

Sowas in der Richtung geht.

miniversum
Bitte warten ..
Mitglied: Phlegma
27.01.2007 um 13:17 Uhr
hi,
hm ok doch das ist ein ansatz.. problem stellt nur eins dar... :
ich kann nicht alles verschieben ansonsten wir an der anchlusstelle des kreises der verschiebung ein fehler auftreten.. ..( 1 zu 0, 2 zu 1, ... 0 zu 9 dann wird die eins auch zu ner 9..)

is es möglich das ganz in weniger als 20 zeilen zu fassen?( soll ja auch alle buchstaben umwandeln...)
danke für den ansatz!
gruß, Ph
Bitte warten ..
Mitglied: miniversum
27.01.2007 um 15:09 Uhr
Klar du kannst ja auch Sonderzeichen benutzen die weder Buchstaben noch Zahlen beinhalten.
So sollte dieses Problem gelöst sein.

Wenns mach nacheinande funktionierrt kanst du es ja in 2 FOR Schleifen ineinander verschachteln. Dan hast du es auf wenige Zeilen Code reduziert.

In einer Andern Programmiersprache wie z.B. C könntest du einfach über den ASCII Code die Zeichen Vershcieben. Ist halt dan wesentlich einfacher. Ob und wenn ja wie das in Batch geht weiß ich nicht.

miniversum
Bitte warten ..
Mitglied: Phlegma
27.01.2007 um 16:19 Uhr
hi, danke
tu mir nen gefallen und schreib mir die beiden for zeilen die du dir vorstellst..
gruß
Ph
Bitte warten ..
Mitglied: miniversum
29.01.2007 um 08:29 Uhr
Na mit 2 Forschleifen alleine ists nicht getan.
Hier hab ich mal was gemacht von A bis F. Du kannst es ja entsprechend erweitern für die anderen Zeichen. Als Zusatszeichen hab ich mal $ gewählt. Vergiss dann nicht die Anzahl der Zeichen + Zusatszeichen in der 5. Zeile unter Anzahl zu ändern.

@echo off
setlocal enabledelayedexpansion

set text=ABCDEF & rem Zu verschlüsselnder Text
set /a anzahl=7 & rem Anzahl der Zeichen

set /a anzahl=%anzahl%+1
set zahl=%anzahl%

FOR %%i in (A B C D E F $) do (
FOR %%j in ($ A B C D E F) do (
if !zahl! equ %anzahl% set /a zahl=0 & set text=!text:%%i=%%j!
set /a zahl=!zahl!+1
)
)

echo %text% & rem Verschlüsselter Text

miniversum
Bitte warten ..
Mitglied: Phlegma
04.02.2007 um 21:36 Uhr
oki,
schöön
sorry dass das gedauert hab bis ich mich melde...
also was du da fabriziert hast scheint schonmal zu funktionieren!
allerdings verstehe ich nicht viel was genau passiert und eine stelle widerspricht sich selbst:
01.
set text=ABCDEF & rem Zu verschlüsselnder Text ABCDEF = 6 zeichen 
02.
set /a anzahl=7 & rem Anzahl der Zeichen <- 7 ??
würdest du mir das bitte schritt für schritt erklären dass ich mir das selbst für den rest erweitern kann?
Mit freundlichen Grüßen, vielen dank,
Ph
Bitte warten ..
Mitglied: Phlegma
04.02.2007 um 21:51 Uhr
sry doppelpost
Bitte warten ..
Mitglied: miniversum
05.02.2007 um 18:54 Uhr
Diese Anzahl bezieht sich auf die Anzahl der Zeichen in den FOR Schleifen (A B C D E F $ bzw. $ A B C D E F), nicht auf die Länge des Textes. Zum erweitern müßtest du also immer diese Zeichen bis Z erweitern bzw. auch die Zahlen hinzufügen. Die Reihenfolge der Zeichen bestimtm dabei welche Zeichen getauscht werden.
In diesem Fall bedeutet das also:

FOR %%i in (A B C D E F $) do (
FOR %%j in ($ A B C D E F) do (

A wird zu $
B wird zu A
C wird zu B
D wird zu C
E wird zu D
F wird zu E
$ wird zu F

Auf diese Art wird aus "ABCDEF" dann also "FABCDE".

Willst du einen Andern Text dann so verschlüsseln ist die Länge des Textes egal.
Hauptsache er steht in der Variablen text (bei mir halt durch set text=ABCDEF).

miniversum
Bitte warten ..
Mitglied: Phlegma
05.02.2007 um 22:29 Uhr
hi,
schön, jez weiß ich genauer was passiert.. aber die genauen befhele sind mir noch nicht klar...
zudem gibt es ein problem bei kleinbuchstaben, die auch groß werden
würdest du mir bitte auch den if befehl erklären damit ich es vllt selbst verbesseren kann?

danke, Ph
Bitte warten ..
Mitglied: miniversum
06.02.2007 um 14:33 Uhr
Ich erklär das ganze mal.
Durch die beiden For-Schleifen in einander werden alle Kombinationen aus den Zeichen ABCDEF$ durchgemacht.
Also A$ AA AB AC AD AE AF B$ BA BB BC ...
Zusätzlich wird in der Variablen zahl mitgezählt.
set /a zahl=!zahl!+1
Da du ja nur die Kombinationen A$ BA CB DC ED FE $F benötigst kann ich diese mit Hilfe der IF Anweisung raussuchen, denn diese Kombination erreicht man gerade dann wenn Zahl = Anzahl der Zeichen +1 ist.
Daher am Anfang Die Zeile
set /a anzahl=%anzahl%+1
und Beim If der Teil:
if !zahl! equ %anzahl%
Ist also zahl=anzahl wird das jeweilige Zeichen in text durch das andere ersetzt. B durch A usw.
die Jeweis gültigen Zeichen stehen also in %%i und %%j und dadurch ergibt sich der hintere Teil der If aAnweisung:
set text=!text:%%i=%%j!
Zusätzlich muß dabei noch zahl auf 0 zurückgesetzt werden:
set /a zahl=0

Wenn du willst kannst du ja mal damit du es besser sehen kannst vor die Zeile mit dem If folgende Zeile schreiben:
echo [!zahl!] [%%i] [%%j]

Dann siehst du was er macht.

miniversum
Bitte warten ..
Mitglied: Phlegma
14.02.2007 um 14:01 Uhr
hi,
melde mich zurück.. bin wieder gesund.

ich habe immernoch verständnisprobleme, mal wieder mangels wissen:

was passiert bei einer variable wenn sie mit ! zeichen angegeben wird? wofür ist das gut?
zudem is das hier für mich leider nicht verständlich:
01.
Da du ja nur die Kombinationen A$ BA CB DC ED FE $F benötigst kann ich diese mit Hilfe der IF Anweisung raussuchen, denn diese Kombination erreicht man gerade dann wenn Zahl = Anzahl der Zeichen +1 ist. 
02.
Daher am Anfang Die Zeile 
03.
 
04.
    set /a anzahl=%anzahl%+1

ansonsten:
deine 2 for schleifen probieren diverse kombinationen aus die ich gar nich brauche, wenn du sie erweiterst bekommst du nachher für 36 zeichen 36x36 rechenvorgänge schon diesen 7x7 brauchen bei mir zeit die bemerkbar ist, gibt es nicht eine andere möglichkeit? obwohl diese sehr gut ist! könnte man nich jedem buchstaben(und zahlen) einzeln einen anderen zuweisen?

zudem problem: klein/großschreibung

ich hatte fast schon gedacht es ist nicht möglich bis du kamst ;)
weiter so! brauch immer noch deiner hilfe

wem sonst etwas dazu einfällt bitte melden

vielen dank, Ph
Bitte warten ..
Mitglied: Phlegma
21.02.2007 um 13:18 Uhr
hi,
so miniversum, du wolltest dass ich den batch den ich habe poste...
ich habe ein paar sachen hinzugefügt...

01.
@echo off 
02.
setlocal enabledelayedexpansion 
03.
 
04.
set /p text=Zu verschlüsselnder Text:  
05.
rem ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 möglich 
06.
if "%text%"=="" set text=ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 
07.
echo %text% 
08.
set alttext=%text% 
09.
pause >nul 
10.
 
11.
::goto mine 
12.
 
13.
set /a anzahl=27 & rem Anzahl der Zeichen 
14.
 
15.
set /a anzahl=%anzahl%+1 
16.
set zahl=%anzahl% 
17.
FOR %%i in (A B C D E F G H I J K L M N O P Q R S T U V W X Y Z $) do ( 
18.
FOR %%j in ($ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z) do ( 
19.
if !zahl! equ %anzahl% set /a zahl=0 & set text=!text:%%i=%%j! 
20.
set /a zahl=!zahl!+1 
21.
echo !zahl! / %%i-%%j / !text! & rem zum besseren verständnis für mich 
22.
23.
 
24.
25.
set /a anzahl=11 & rem Anzahl der Zeichen 
26.
 
27.
set /a anzahl=%anzahl%+1 
28.
set zahl=%anzahl% 
29.
FOR %%i in (0 1 2 3 4 5 6 7 8 9 $) do ( 
30.
FOR %%j in ($ 2 3 4 5 6 7 8 9 0 1) do ( 
31.
if !zahl! equ %anzahl% set /a zahl=0 & set text=!text:%%i=%%j! 
32.
set /a zahl=!zahl!+1 
33.
echo !zahl! / %%i-%%j / !text! & rem zum besseren verständnis sollte entfernt werden später 
34.
35.
 
36.
37.
echo %alttext% wurde zu 
38.
echo %text% 
39.
pause >nul 
40.
exit 
41.
:mine 
42.
set text=!text:Z=$! 
43.
set text=!text:Y=Z! 
44.
set text=!text:X=Y! 
45.
set text=!text:W=X! 
46.
set text=!text:V=W! 
47.
set text=!text:U=V! 
48.
set text=!text:T=U! 
49.
set text=!text:S=T! 
50.
set text=!text:R=S! 
51.
set text=!text:Q=R! 
52.
set text=!text:P=Q! 
53.
set text=!text:O=P! 
54.
set text=!text:N=O! 
55.
set text=!text:M=N! 
56.
set text=!text:L=M! 
57.
set text=!text:K=L! 
58.
set text=!text:J=K! 
59.
set text=!text:I=J! 
60.
set text=!text:H=I! 
61.
set text=!text:G=H! 
62.
set text=!text:F=G! 
63.
set text=!text:E=F! 
64.
set text=!text:D=E! 
65.
set text=!text:C=D! 
66.
set text=!text:B=C! 
67.
set text=!text:A=B! 
68.
set text=!text:$=A! 
69.
 
70.
echo %alttext% 
71.
echo %text% 
72.
pause >nul
die sache mit den zahlen geht nicht....
antworte bitte auch auf meinen vorigen post.. ich kapiers irgendwie noch nicht

zudem habe ich, nach dem ich etwas verstanden habe, eine schnellere aber häßlichere methode gemacht ... ab der marke :mine ...

ich denke beide versionen haben vorteile, meine an geschwindigkeit und deine an veränderlichkeit...
so kann man bei dir schnell verändern dass de buchstaben um mehrere positionen verschoben werden (A=C, statt A=B).

klein und großschreibung ist noch ein problem

wie die zahlen und buchstaben geänadert werden sollen steht oben im eingangstext.

vielen dank für deine bisherige hilfe und für deine zukünftige!

gruß, Ph
Bitte warten ..
Mitglied: miniversum
21.02.2007 um 19:05 Uhr
Hallo

was passiert bei einer variable wenn sie mit ! zeichen angegeben wird? wofür ist das gut?
Da ich ja in der Forschleife die Variable zahl hochzählen will muß ich mit enabledelayedexpansion arbeiten. Würe ich das nicht tun würde nicht gezählt werden. die Variable würde dann nur einmal zu beginn der schleife aufgelöst werden. und da ich eben mit enabledelayedexpansion arbeite muß ich die Variablen statt mit % mit ! schreiben. Das ist da dann so. Schau mal unter setlocal /?

Das mit den Kombinationen ist eben weil, wie du schon gemerkt hast, die zwei For Schleifen JEDE Kombination durchmachen und nur die entsprechenden benutzt. Da eben alle zeichen um 1 verschoben sind habe ich auch die Formel mit dem anzahl + 1 drin. Dadurch werden eben diese "rausgesucht". Das meinte ich mit den Kombinationen von A$ BA CB DC ED FE $F benötigen.
Am besten siehst du das ja in deiner Zeile mit dem
echo !zahl! / %%i-%%j / !text! & rem zum besseren verständnis für mich
Wenn du das mal nur mit den Buchstaben von A bis F durchspielst und dir anschaust welchen Wert !zahl! bei den für dich relevanten Anordnungen hat wirst du sehen wie ich auf die anzahl+1 komme. Für alle 26 Buchstaben gild das entsprechende dann. Ist ne eher mathematische/kombinatorische Sache.

Wie du schon gesehen hast ist deine Lösung mit dem
...
set text=!text:L=M!
set text=!text:K=L!
...
die schnellere Lösung, aber eben lange und eigentlich imerm wieder das gleiche.
Das wollte ich eben mit den 2 Forschleifen und der ZählVariablen nachbilden. Klar ist deine Möglichkeit schneller. Ist halt eine Möglichkeit den Code zu Reduzieren.

Wichtig bei beiden Möglichkeiten ist immer die Reihenfolge der Vertauschungen. Wenn die nciht passt kannst du schnell lauter gleiche Zeichen bekommen, was dir bei den Zahlen passiert ist (dazu später noch). Am besten Du schreibst dir die Kombinationen der Vertauschungen vorher mal auf um dann den Kreis in der Richtigen reihenfolge zu druchlaufen und schließen zu können.
Vorteil das Strategie untereinander jedes Extra zu tauschen, ist halt auch das zufällige Kombinationen möglich sind, ohne eine System wie der Verschub um eine Stelle darin zu haben.

Zum den Kleinbuchstaben:
Koppiere einfach den ganzen Block von den großbuchstaben und mach daraus kleine. ist mal am einfachsten. Prinzipiell wäre es auch möglich alles (alle Buchstaben und Zahlen in einem Mal in die zwei For Schleifen zu packen).

Das mit dienen Zahlen liegt an der Reihenfolge.
Du hast alle 1en durch eine 2er ersetzt. Danach alle 2er durch 3en, also auch die 2en die vorher 1er waren.
Du müßtest es also umgekehrt machen udn Zuerst die 8er zu 9er, dann die 7er zu 8er, usw...

01.
set /a anzahl=11 & rem Anzahl der Zeichen 
02.
set /a anzahl=%anzahl%+1 
03.
set zahl=%anzahl% 
04.
FOR %%i in (9 8 7 6 5 4 3 2 1 0 $) do ( 
05.
FOR %%j in ($ 9 8 7 6 5 4 3 2 1 0) do ( 
06.
if !zahl! equ %anzahl% set /a zahl=0 & set text=!text:%%i=%%j! & echo !zahl! / %%i-%%j / !text! 
07.
set /a zahl=!zahl!+1 
08.
echo !zahl! / %%i-%%j / !text! & rem zum besseren verständnis sollte entfernt werden später 
09.
10.
11.
echo %alttext% 
12.
echo %text%
Vielleicht solltest du die Zeile
echo !zahl! / %%i-%%j / !text! & rem zum besseren verständnis sollte entfernt werden später
durch folgende ersetzen, dass es anschaulicher wird.
echo !zahl! / %%i wird zu %%j & rem zum besseren verständnis sollte entfernt werden

miniversum
Bitte warten ..
Mitglied: Phlegma
24.02.2007 um 17:07 Uhr
hi,
schön!

nun das letzte problem:
klein/großschreibung

alle kleinen buchstaben werden hier groß gemacht, ich hätte sie gern klein behalten.

setlocal hat nich geholfen, aber ich hab gemerkt das echo %text% und echo !text! etwas anderes herauskommt.

thx, ph
Bitte warten ..
Mitglied: miniversum
24.02.2007 um 18:11 Uhr
Damit wirst du woll leben müssen. Ich wüsste nicht wie man da suntershcieden kann. Ich dachte erst einfach das gleiche mit kleinen buchstaben aber der PC kennt dne Unterschied nicht.

Vielleicht würdest du an dieser Stelle mit vbs weiter kommen, wie in dem andern Posting an dem Du dich ja uch beteiligt hast ein Lösungsvorschlag gepostet wurde.

Batch hat eben auch seine Grenzen.

Oder wechsle gleich zu einer anderen Programmiersprache wie C oder so.

miniversum
Bitte warten ..
Mitglied: Phlegma
24.02.2007 um 19:15 Uhr
moin,

ok.. ich werde dann vllt alles auf klein ändern sonst sieht es so agressiv aus...

und gern C .. wenn du mir das wisse ndazu in den kopf beamst?

.. hm nich bös gemeint.. ich bin erst 16j und das is für meine kenntnisse schon ein großes projekt, wo dieses cript ein kleiner teil von ist^^

vielen dank für die hilfe!

Phlegma
Bitte warten ..
Mitglied: Phlegma
24.02.2007 um 19:54 Uhr
hi,
ich muss nochmal schreiben da ich noch nicht allein zu potte komme...

also 2 sachen:

1. Uncript, der ganze vorgang soll rückgänig gemacht werden
2. Cript2 der vorgang soll nicht nur um einen buchstbane sondern um 2 sein ...


ich denke beide sahcen sollte ndurch änderung der !zahl! möglich sein aber ich bekommst nciht hin...

wär nett wenn du mir nochmal helfen würdest,

gruß Ph
Bitte warten ..
Mitglied: miniversum
25.02.2007 um 11:05 Uhr
Ich würde beides es durch Änderung der Reihenfolge in den beiden Forschleifen machen (vielleicht bei zurückcodieren mit z beginnen nicht mit a).

Na das erlernen von C ist auch nicht soo schwer, wenn dus erstmal bei konsoleneingabe beläst. Abfangen von eingabe ist ncith all zu schwer. In C hast du dann den vorteil das du die Buchstaben in ihre Ascii werte umwandeln kannst und so diese werte einfach um einen beliebigen Wert erhöhen kannst und wieder zurückwanden. Im internet, und natürlich auch hier im Forum gibt es genügend beispielcodes und anleitungen für C. Also wenn Du dich dafür interessierst... Manche Dinge gehen da halt einfacher als in Batch.

miniversum
Bitte warten ..
Mitglied: Phlegma
25.02.2007 um 11:43 Uhr
hi,

hm ich werd ma gucken... C... hmhm

aber is es nicht möglich einfach den wert des !zahl!+1 teils zu verändern? muss sicher die ganze reihenfolge der buchstaben geändert werden?

hm... gut wie du meinst

vielen dank, Ph
Bitte warten ..
Mitglied: miniversum
25.02.2007 um 12:58 Uhr
so auf anhieb kann ich das garnicth beantworten. wenn müßtest du aus den
set /a anzahl=%anzahl%+1
ein
set /a anzahl=%anzahl%+2
machen...

miniversum
Bitte warten ..
Mitglied: Phlegma
25.02.2007 um 19:21 Uhr
hi,

he schön wärs...

hab da auch schon rumprobiert... ne leider nicht...
dann würde jah auch -1 zuim decript führen.. nope.. schade

könntest du dich nochmal damit beschäftigen?

würde mir auch beim verständnis helfen, dankö

Gruß, Ph
Bitte warten ..
Mitglied: miniversum
26.02.2007 um 19:26 Uhr
Nim den Code wie beim Verschlüsseln und ändere bei den Zahlen die Forschleifen so:
FOR %%i in (0 1 2 3 4 5 6 7 8 9 $) do (
FOR %%j in ($ 0 1 2 3 4 5 6 7 8 9) do (
und bei den Buchstaben so:
FOR %%i in (Z Y X W V U T S R Q P O N M L K J I H G F E D C B A $) do (
FOR %%j in ($ Z Y X W V U T S R Q P O N M L K J I H G F E D C B A) do (

miniversum
Bitte warten ..
Mitglied: Phlegma
26.02.2007 um 19:39 Uhr
hm danke..

vllt hätt ich das au geschafft...

schade dass du keinen schalter setzen kannst, verstell je nachdem wieviel buchstaben der text weitergeschoben werden soll A->B oder A->C oder was weiß ich...

Ty, Ph
Bitte warten ..
Mitglied: miniversum
26.02.2007 um 20:59 Uhr
Da müßte amn woll dan Ansatz neu wählen. so auf anhief fällt mir da allerdings ncihts Gutes ein.

miniversum
Bitte warten ..
Mitglied: Phlegma
26.02.2007 um 21:59 Uhr
schade...


Nun meld dich bitte wenn dir doch noch was einfällt abe rich bin schon sehr froh damit was ich nun habe, hast mir sehr geholfen, vielen dank

Gruß, Ph
Bitte warten ..
Mitglied: miniversum
27.02.2007 um 18:14 Uhr
Wie gesagt höhere Programmiersprachen sind da wol besser geeignet.

Wenns nur ums Verschieben geht könntest Du es mal wie in deinem Ansatz mit den ganzen:
set text=!text:Y=Z!
set text=!text:X=Y!
set text=!text:W=X!
set text=!text:V=W!
...
versuchen nur nicht gleich nem andern Buchstaben zuweisen sondern über Variabeln gehen die du dynamisch erstellen könntest. Mit enabledeleyedexpansion (siehe dem einen aktuellen beitrag im Batch Bereich). Die erstellten variebeln (die ja Nummern enthalten) könntest du dann beim Erzeugen udn erstmaligem Zuweisen versetzt zuordnen und am ende wieder bei 1 beginnen sollte der Wert er Zahl über 26 liegen. So könntest du den Verschub der Buchstaben einfach nur über den Anfangswert festlegen.
Ist aber nur so ein Gedankengang...

miniversum
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
Batch-Probleme bei Verschlüsselung

Frage von Jonas1806 zum Thema Batch & Shell ...

Batch & Shell
gelöst Variablen Zusammenbauen 2.0 ( Batch ) (6)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
gelöst FOR Loop Variablen ( Batch ) (2)

Frage von clragon zum Thema Batch & Shell ...

Batch & Shell
gelöst Grosses Variablen Problem ( Batch) (30)

Frage von clragon zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (32)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...