Форум программистов, компьютерный форум, киберфорум
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
15 / 14 / 4
Регистрация: 22.05.2013
Сообщений: 524

Алгоритм шифрования ROT13 на Ассемблере

08.06.2013, 17:33. Показов 2782. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
помогите с Алгоритмои шифрования ROT13 на Ассемблере masm 32. нужно написать программу. пожалуйста помогите!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.06.2013, 17:33
Ответы с готовыми решениями:

Программа шифрования методом гаммирования (XOR), длина гаммы равна длине текста
Помогите. Задание такое: написать программу которая будет шифровать введенное слово МЕТОДОМ ГАММИРОВАНИЯ (если просто считать слово по...

Программа для шифрования английского текста шифром ROT13
Доброго времени суток, формучане! Очень нужна ваша помощь, не могу понять, как написать программу для шифрования текста шифром ROT13. В С++...

Алгоритм шифрования
Здравствуйте, посоветуйте алгоритм шифрования, которым можно в билдере зашифровать, а на PHP расшифровать. Но чтобы en/de coding происходил...

6
Клюг
 Аватар для Charles Kludge
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
08.06.2013, 18:04
В гугле забанили?
http://www.manhunter.ru/assemb... blere.html
0
15 / 14 / 4
Регистрация: 22.05.2013
Сообщений: 524
08.06.2013, 18:06  [ТС]
Цитата Сообщение от Charles Kludge Посмотреть сообщение
В гугле забанили?
http://www.manhunter.ru/assemb... blere.html
а как же! но это на fasm а мне нужно на masm 32
0
Клюг
 Аватар для Charles Kludge
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
08.06.2013, 18:18
Офигенно сложно переделать:
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
.386
.model  flat, stdcall
.code
;-----------------------------------------------------------------------
; Функция шифрования строки по алгоритму ROT13
; Copyright (C) ManHunter / PCL
; [url]http://www.manhunter.ru[/url]
;-----------------------------------------------------------------------
; Параметры:
;      lpData - указатель на строку
;      dSize  - длина строки
;-----------------------------------------------------------------------
ROT13   proc     lpData:DWORD, dSize:DWORD
        pusha
 
        ; Длина строки
        mov     ecx, dSize
        or      ecx,ecx
        jz      @loc_ret
 
        ; Указатели на строку
        mov     esi,lpData
        mov     edi,esi
@loc_crypt:
        ; Получить символ из строки
        lodsb
        inc     edi
 
        ; Сохранить бит регистра
        mov     ah,al
        and     ah,20h
 
        ; Символ в верхний регистр
        and     al,0FFh-20h
        cmp     al,'A'
        ; Кодировать не надо
        jb      @no_crypt
        cmp     al,'Z'
        ; Кодировать не надо
        ja      @no_crypt
 
        sub     al,13
        ; Cимвол первой половины алфавита?
        cmp     al,'A'
        jae     @f
        add     al,26
@@:
        ; Восстановить бит регистра
        or      al,ah
        dec     edi
        ; Записать измененный символ
        stosb
@no_crypt:
        ; Следующий символ
        loop    @loc_crypt
@loc_ret:
        popa
        ret
ROT13   endp
end
1
15 / 14 / 4
Регистрация: 22.05.2013
Сообщений: 524
08.06.2013, 18:29  [ТС]
я не очень в ассемблере! спасибо!


огромное Вам спасибо!!!!! извините я ламер в ассемблере! подскажите как сделать из этого когда экзешник? или его не реально сделать на масме?
0
Клюг
 Аватар для Charles Kludge
7677 / 3192 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
08.06.2013, 20:21
Цитата Сообщение от SENDEJER Посмотреть сообщение
или его не реально сделать на масме?
На этот раз мне самому было интересно. Я чувствовал, что писать под вынь(не консоль) на масм32 - это зопа. Так оно и есть. Вобщем, проба пера, так сказать:
Code
1
2
ml -c -coff rot13.asm
Link /SUBSYSTEM:WINDOWS /OPT:NOREF rot13.obj
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
      .486                      ; create 32 bit code
      .model flat, stdcall      ; 32 bit memory model
      option casemap :none      ; case sensitive
 
      include \masm32\include\dialogs.inc
      include rot13.inc
  ID_TXT = 100
  ID_ROT13 = 101
    
      DialogProc PROTO :DWORD,:DWORD,:DWORD,:DWORD
 
;---------------------------------------------
 
.data?
 
buff    db 500h dup(?)
 
;---------------------------------------------
 
.code
 
start:
      mov hInstance, FUNC(GetModuleHandle,NULL)
        call    main
;        invoke  DialogBoxParam,eax,37,HWND_DESKTOP,DialogProc,0
        invoke  ExitProcess,0
;---------------------------------------------
main proc
 
    Dialog "ROT13 Demo","MS Sans Serif",10, \            ; caption,font,pointsize
            WS_OVERLAPPED or WS_CAPTION or WS_SYSMENU or DS_CENTER or DS_SYSMODAL, \     ; style
            3, \                                            ; control count
            0,0,190,55, \                                 ; x y co-ordinates
            1024                                            ; memory buffer size
 
    DlgEdit WS_VISIBLE or WS_BORDER or WS_TABSTOP or ES_AUTOHSCROLL,5,7,177,13, ID_TXT
    DlgEdit WS_VISIBLE or WS_BORDER or ES_READONLY or ES_AUTOHSCROLL,5,19,177,13, ID_ROT13
    DlgButton "Exit",WS_TABSTOP,135,37,50,15,IDCANCEL
 
    CallModalDialog hInstance,0,DialogProc,NULL
 
    ret
 
main endp
 
;-----------------------------------------------------------------------
; Функция шифрования строки по алгоритму ROT13
; Copyright (C) ManHunter / PCL
; [url]http://www.manhunter.ru[/url]
;-----------------------------------------------------------------------
; Параметры:
;      lpData - указатель на строку
;      dSize  - длина строки
;-----------------------------------------------------------------------
ROT13   proc     lpData:DWORD, dSize:DWORD
        pusha
 
        ; Длина строки
        mov     ecx, dSize
        or      ecx,ecx
        jz      @loc_ret
 
        ; Указатели на строку
        mov     esi,lpData
        mov     edi,esi
@loc_crypt:
        ; Получить символ из строки
        lodsb
        inc     edi
 
        ; Сохранить бит регистра
        mov     ah,al
        and     ah,20h
 
        ; Символ в верхний регистр
        and     al,0FFh-20h
        cmp     al,'A'
        ; Кодировать не надо
        jb      @no_crypt
        cmp     al,'Z'
        ; Кодировать не надо
        ja      @no_crypt
 
        sub     al,13
        ; Cимвол первой половины алфавита?
        cmp     al,'A'
        jae     @f
        add     al,26
@@:
        ; Восстановить бит регистра
        or      al,ah
        dec     edi
        ; Записать измененный символ
        stosb
@no_crypt:
        ; Следующий символ
        loop    @loc_crypt
@loc_ret:
        popa
        ret
ROT13   endp
;---------------------------------------------
 
DialogProc proc hwnddlg,msg,wparam,lparam
        push    ebx 
        push    esi 
        push    edi
        mov eax, msg
        cmp     msg,WM_INITDIALOG
        je      @wminitdialog
        cmp     msg,WM_COMMAND
        je      @wmcommand
        cmp     msg,WM_CLOSE
        je      @wmclose
        xor     eax,eax
        jmp     @finish
@wminitdialog:
        jmp     @wmencode
@wmcommand:
        cmp     wparam,BN_CLICKED shl 16 + IDCANCEL
        je      @wmclose
        cmp     wparam,EN_CHANGE shl 16 + ID_TXT
        je      @wmencode
        jmp     @processed
 
@wmencode:
        invoke  GetDlgItemText,hwnddlg,ID_TXT, ADDR buff,255
        invoke  lstrlen,ADDR buff
        invoke ROT13,ADDR buff,eax
 
        invoke  SetDlgItemText,hwnddlg,ID_ROT13,ADDR buff
        jmp     @processed
 
@wmclose:
        invoke  EndDialog,hwnddlg,0
@processed:
        mov     eax,1
@finish:
        pop     edi 
        pop esi 
        pop ebx
        ret
DialogProc  endp
 
end start
Вложения
Тип файла: zip rot13.zip (3.3 Кб, 25 просмотров)
0
15 / 14 / 4
Регистрация: 22.05.2013
Сообщений: 524
08.06.2013, 20:54  [ТС]
большое спасибо!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.06.2013, 20:54
Помогаю со студенческими работами здесь

Алгоритм шифрования
Доброго времени суток. Есть исходный код, который расшифровывает строку по ключу (5BCC2D6A95D4DF04A005504E59A9B36E). Возможно ли...

Алгоритм шифрования
Всех с прошедшими праздниками! Выручите пожалуйста ребят. 1). В шифруемой фразе определяется количество символов, затем это число ...

Алгоритм шифрования
Нужен алгоритм шифрования и дешифрования строки. Два метода. Шифруем строку с помощью пароля. Дешифруем тоже с помощь пароля. public...

Алгоритм Шифрования
Добрый вечер. У меня такой к вам вопрос, Самый безопасный шифральшик паролей. Чтобы безопасно мог шифровать пароли, безопасная...

Алгоритм шифрования
Доброго времени суток. Имеется программа, которая шифрует данные собственным алгоритмом. Есть пример зашифрованных данных (вместе с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии. . . .
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru