powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Перемешать информацию...
16 сообщений из 16, страница 1 из 1
Перемешать информацию...
    #36353173
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть таблица n полей, m записей, и m>n.Операций удаления, вставки нет.
Как бы перемешать информацию, чтоб значение каждого поля сместилось в определённом порядке, но чтоб при просмотре, всё встало на свои места....
т.е. данные первого поля из первой записи остались на месте, второго поля куда-то съехали, третьего тоже ушли и т.д., потом переходим на вторую запись, начинаем смещать и т.д....
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36353226
alextashk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1,

Всё смешалось в доме Облонских
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36353383
Похоже, он про кросстабуляцию хочет спросить...
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36353519
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не знаю, что такое кросстабуляция, и как объяснить, но может видели кодовые замки, типа шесть колёсиков с 10 цифрами, вот что-то типа этого...
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36353620
q1w1e1Я не знаю, что такое кросстабуляция, и как объяснить, но может видели кодовые замки, типа шесть колёсиков с 10 цифрами, вот что-то типа этого...
Зачем такие сложности, если можно просто зашифровать Ваши данные?
Шифрующие алгоритмы есть разные. Самый простой - замена каждой буквы буквой или цифрой, отстоящей от заданной, на определенное число знаков. При этом, число для определения смещения может быть пропорционально позиции буквы в слове.
Естественно, что в паре с шифрующей функцией надо будет написать и дешифрующую функцию...
Хоть такие шифры и считаются ненадежными, но от некоторых "шаловливых ручек" избавляют...
Если Вам надо только "озадачить" "продвинутых" пользователей, то это решение - самое оно. Но от "кул хацкеров" оно уже не спасет.
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36353697
q1w1e1
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть у меня шифрующие и дешифрующие функции паролей, но это всё не то, например если есть ФИО, адреса, счета и т.д., чтоб нельзя было однозначно индентифицировать лицо...т.е. фио одно, адреса другие , счета взяты от третьего и т.д....
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36353813
q1w1e1Есть у меня шифрующие и дешифрующие функции паролей, но это всё не то, например если есть ФИО, адреса, счета и т.д., чтоб нельзя было однозначно индентифицировать лицо...т.е. фио одно, адреса другие , счета взяты от третьего и т.д....
Зачем это надо?! Ну сделайте смещения так, как я сказал для позиций букв в строке (только для позиций записей (Recno()) в таблицах). Только эти смещения должны где-то храниться (либо быть зашитыми в программу).

Представляется мне такая схема:
1. Таблица загружается в память (курсор) с проведением необходимых преобразований; строятся/обновляются индексы, восстанавливаются связи и т.д.
2. Пользователь ведет работу как ни в чем не бывало
3. При выходе из программы, либо при нажатии на кнопку "Сохранить" проводится "перемешивание" и "исправленные" данные физически записываются в таблицы на диске.
4. При нажатии на кнопку "Сохранить" повторно производится чтение согласно п.1
5. При сбое в работе (например, внезапное выключение питания) - исходные данные на диске не пострадают.

Один очевидный "минус" - программа будет очень "прожорливой" по памяти, так как таблицы надо будет держать в памяти; кроме того не будет она и сетевой (по вышеуказанной же причине)...

А теперь подумайте - стоит ли "овчинка" выделки?
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36353829
Может возникнуть желание избавиться от курсоров и записать "исправленные" данные на диск. Но это "нехорошее желание". Ибо такие данные могут легко стать доступными при несанкционированном завершении программы (перезагрузка, выключении компьютера, снятии процесса через менеджер задач (Task Manager) и т.д.).
И тогда смысл подобного "шифрования" теряется полностью!!!
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36353860
q1w1e1,

Деперсонализация? Попытка исполнить Закон о защите персональных данных? Думаю, не прокатит. Нужно решать на административном уровне.
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36354235
quxix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
q1w1e1Есть у меня шифрующие и дешифрующие функции паролей, но это всё не то, например если есть ФИО, адреса, счета и т.д., чтоб нельзя было однозначно индентифицировать лицо...т.е. фио одно, адреса другие , счета взяты от третьего и т.д....
Фокс не заточен под шифрование данных-задумывался над аналогичной проблемой и пришел к выводу,что построение такого лесипеда дело большого геммороя-просто смириться и решать проблему другими в том числе организационными методами:оф.бумаги,права на файл-сервере и т.д.
Озвученной проблеме отвечает сервера где есть и идентификация, и роли, и права, и шифрование самой бд-например Oracle.
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36354324
Sea_Cat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
q1w1e1,

Для деперсонализации можно использовать такой прием. Разделить все реквизиты - фамилию, адрес и т.п. по отдельным таблицам (с уникальным первичным ключом, естественно). Один файл - собственно описание "персоны" - будет содержать только ссылки на реквизиты. Если еще ключи записывать в этот файл не напрямую, а с шифрованием - то разобраться в этом будет достаточно сложно.
Весь вопрос в том, как посмотрят на это "компетентные органы", которые сертифицируют программы на предмет соответствия Закону.
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36354411
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1Есть таблица n полей, m записей, и m>n.Операций удаления, вставки нет.
Как бы перемешать информацию, чтоб значение каждого поля сместилось в определённом порядке, но чтоб при просмотре, всё встало на свои места....
т.е. данные первого поля из первой записи остались на месте, второго поля куда-то съехали, третьего тоже ушли и т.д., потом переходим на вторую запись, начинаем смещать и т.д....
Больная идея. Если хотите заморочить голову рядовому хакеру, достаточно и шифрования. Если желаете следовать букве Закона 152, то используйте только средства, этим законом предусмотренные, а не пионерские самоделки.
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36355020
alextashk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
q1w1e1,

По моему, проще перейти на файл-серверную систему - FireFox или PostgreSQL
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36356942
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: alextashk
> файл-серверную систему - FireFox

А что это за система?
Если FireBird, то она клиент-серверная и под закон не попадает, нет шифрования. Есть шифрование в RedDatabase.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36357043
alextashk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос,

Да, FireBird.
Извените за опечатку
Фукнцию шифрования можно и самому сделать
...
Рейтинг: 0 / 0
Перемешать информацию...
    #36358339
Crispy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
q1w1e1Есть таблица n полей, m записей, и m>n.Операций удаления, вставки нет.
Как бы перемешать информацию, чтоб значение каждого поля сместилось в определённом порядке, но чтоб при просмотре, всё встало на свои места....
т.е. данные первого поля из первой записи остались на месте, второго поля куда-то съехали, третьего тоже ушли и т.д., потом переходим на вторую запись, начинаем смещать и т.д....
Если цель заморочить голову невинному пользователю, необремененному познаниями), а также возможно и самому себе при дальнейшей работе с таблицей))), то можно поступить таким образом:
1) для каждого поля завести дополнительное кодовое поле, с разрядностью, достаточной для максимально возможного в перспективе числа записей,
2) расположив записи в нужном правильном порядке, прописать в каждое из этих полей порядковые номера записей,
3) написать простенькую процедурку для случайной выборки поля и одновременно связанного с ним кодового поля в новую пустую таблицу с таким же числом записей, при этом затирая их в старой таблице, чтобы в дальнейшем цикле, анализируя на пустоту, не выбирать их по второму разу,
4) все! )))
В результате имеем перемешанную таблицу, в которой внешним просмотрщиком сходу ничего не поймешь. Внутри программы же используем временный курсор-выборку по связанным кодовым полям, т.е. например чтобы код_фамилии=код_имени=код_отчества, и т.д., хотя возможно придется подумать над select-ом для выборки.

При большом числе записей видимо и действительно у случайного любопытствующего в первый момент глаза разбегутся.))) Впрочем понятно, как уже и сказали выше, что для достаточно серьезного шифрования такой способ изначально непригоден.)
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Перемешать информацию...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]