PROFI에서 SUPERPROFI에 대한 모든 질문 - 1. - 페이지 6

 
sergeev :
GetID - 동적?

유감스럽게도 예, 매개변수 값은 동적으로 변경될 수 있으므로 그에 따라 ID도 변경되어야 합니다.
 

가장 간단한 옵션은 전체 매개변수 목록을 하나 의 긴 문자열 로 변환하고 MD5 를 사용하는 것입니다. 문자열에 대한 더 짧은 해시 함수.

매개변수를 변경할 때 고유성과 명확성과 역동성을 모두 갖게 됩니다.

 
MD5는 외부 구현(예: dll을 통해)에서만 가져올 수 있습니까? 아니면 MQL4, MQL5를 사용하여 구현하는 옵션이 있습니까?
 
sergeev :

매개변수를 변경할 때 고유성과 명확성과 역동성을 모두 갖게 됩니다.

독창성은 없을 것입니다.
그리고 일반적으로 오랫동안 Sha256으로 전환하는 것이 좋습니다.
주어진 Md5로 암호를 생성하는 알고리즘이 생성되었기 때문입니다.
C-4 :
MD5는 외부 구현(예: dll을 통해)에서만 가져올 수 있습니까? 아니면 MQL4, MQL5를 사용하여 구현하는 옵션이 있습니까?
물론... 할 일이 없다면 Mql에서 하십시오.
 
C-4 :
MD5는 외부 구현(예: dll을 통해)에서만 가져올 수 있습니까? 아니면 MQL4, MQL5를 사용하여 구현하는 옵션이 있습니까?

나는 당신이 그물에서 알고리즘을 찾을 것이라고 생각합니다. 여기 예를 들어. 또는 위키

 
그러나 일반적으로 ... 여기에 매개 변수와 식별자가 있는 작업이 있습니다. 이것은 1:1 Java hashCode / equals입니다.
모든 매개변수를 식별자로 묶을 수 있는 경우에만 모든 것이 원하는 대로 나타납니다.
저것들. 원하는 것의 해싱 기능은 제공하지 않습니다 ...
 
jartmailru :
독창성은 없을 것입니다. 그리고 일반적으로 오랫동안 Sha256으로 전환하는 것이 좋습니다.
주어진 Md5로 암호를 생성하는 알고리즘이 생성되었기 때문입니다.

여기 비밀번호가 뭐에요? :))) 우리는 즉석에서 생성되고 다른 매개변수에 대해 다른 클래스 식별자에 대해 이야기하고 있습니다.

----------

일반적으로 C-4, 매개 변수 문자열이 어쨌든 생성되면 왜이 해시가 전혀 없다고 생각했습니다. :)

두 문자열을 비교하기만 하면 됩니다.

 
sergeev :

여기 비밀번호가 뭐에요? :))) 우리는 즉석에서 생성되고 다른 매개변수에 대해 다른 클래스 식별자에 대해 이야기하고 있습니다.

내 대답의 요지:
1) Md5는 고유 ID를 제공하지 않습니다
1.1) 작업에 대한 해싱 기능을 사용할 수 없습니다.
2) Md5- 유행하지 않음
예, 단지 비교입니다. 모두 - 배열에서 - 그런 다음 이진 검색 :-).
추신: C++로 이에 대한 코드를 작성할 필요조차 없습니다...
 


Уникальности не будет.
И вообще уже давно рекомендуют переходить на Sha256,
потому что создан алгоритм, генерирующий пароль с заданным Md5.

문제를 해결하기 위해 암호화 강도가 필요하지 않습니다. 독특한 각인을 만드는 것이 중요합니다. 불행히도 MD5는 128비트 해시 코드입니다. MQL에는 이러한 길이의 변수 유형이 없습니다. 따라서 나는 아마도 그것에 훨씬 더 간단한 Adler-32를 구현하고 각 클래스 인스턴스에 대해 고유한 32비트 ID 번호를 생성하도록 만들 것입니다.

추신 가능하면 단락 1.1에 대해 자세히 설명합니다. 왜 정말 불가능합니까?

 
jartmailru :

네, 그냥 비교입니다. 모두 - 배열에서 - 그런 다음 이진 검색 :-).

네. 이 경우 해시 없이 할 수 있습니다.

이 옵션이 Vasily에 적합하면 모든 매개변수를 라인에 입력하기만 하면 됩니다. 문자열은 클래스 식별자가 됩니다.