FoxPro Club Главная

Конференция Решения Фотоальбом Сайт М.Дроздова Статьи Файловый архив Книга Visual FoxPro 9.0 Русский Help для Visual FoxPro
Пользователей: 9115
Вход
Шифрование данных

Классический тип шифрования полей в таблице. Возможность шифровать сразу несколько полей и изменения ключа шифрования.


 
Прислал: Игорь   Категория: Разное


Шифрование данных

Еще один класс для шифрования полей таблицы. Его автор - Игорь. Классический принцип работы, т.е. есть команда шифровки поля и дешифровки.

Как использовать:

Подключаете класс к проекту, ставите экземпляр класса на форму
При открытии таблицы (или при другом событии, как вам будет нужно) вызываете метод to_tablecode объекта enciphering1 с параметрами: алиас таблицы, поле(или несколько через запятую), признак шифрования (COD,DECOD)

thisform.enciphering1.to_tablecode("Table1","pole1","DECOD")
или
thisform.enciphering1.to_tablecode("Table1","pole1","COD")

Но перед этим вы должны установить в свойство keyword объекта enciphering1 ключ шифра - любую текстовую строку (цифры лучше не использовать)

thisform.enciphering1.keyword="hfTb"

Скачать класс ...

 
Сделайте оценку этого решения Плохо Удовлетворительно Так себе Хорошо Отлично Текущая оценка: (4.869) Вложение [3.07]kb
Дополнения пользователей
Шифрование данных
[+][?]
ВладимирМ
23.07.01 03:49:52

В медоды шифрования и дешифровки следует добавить следующие строки:

1. В самом начале метода
LOCAL lnStartSpace, lnEndSpace
lnStartSpace = LEN(lcLine)-LEN(LTRIM(lcLine))
lnEndSpace = LEN(lcLine)-LEN(RTRIM(lcLine))

<далее собственно шифрование-дешифрование>

2. И перед командой RETURN

lcCode = space(lnStartSpace)+lcCode+space(lnEndSpace)


Для чего это нужно? Теперь эти процедуры можно включить в хранимые процедуры и напрямую
использовать в SQL-запросах не опасаясь, что вместо целой строки ты получишь только одни символ.

SPACE(0) правильно воспринимается компилятором и не вызывает сообщение об ошибке.
Александр
11.02.02 10:54:03

Все бы хорошо, да что-то с таблицами, где СР = 866, а текстовые строки на русском - не идет. Т.е.
все конечно работает, но после DECOD запись ничуть не лучше, чем при кодировании. Что посоветуете,
если мне нужно сохранить 866 страницу?
[Дополнить]



© 2000-2017 Fox Club 
При размещении любых материалов с сайта на других ресурсах- прямая ссылка на www.foxclub.ru обязательна
Яндекс.Метрика