MT5'te MQL kodunun yazarlığının korunması. güvenlik sertifikaları - sayfa 7
Alım-satım fırsatlarını kaçırıyorsunuz:
- Ücretsiz alım-satım uygulamaları
- İşlem kopyalama için 8.000'den fazla sinyal
- Finansal piyasaları keşfetmek için ekonomik haberler
Kayıt
Giriş yap
Gizlilik ve Veri Koruma Politikasını ve MQL5.com Kullanım Şartlarını kabul edersiniz
Hesabınız yoksa, lütfen kaydolun
örneğin
alıcı: İnternette bilgi bulur, satın almak istiyorum yazar
satıcı: ödeme mekanizması açıklanmıştır - ayrıntıları yayınlamak istenmiyorsa - kişiselleştirme için veri ister
alıcı: anahtar olan kişiselleştirme, hesap numarası veya tam ad için verileri öder ve gönderir
satıcı: kişisel verilere bağlı malları gönderir.
ideal olarak, bu kadar!
Böyle vakalarım var ve çok az değil
Ne yazık ki, bu bazı freebie sevenler için hayatı zorlaştırmıyor (bilinen insanlar). Bir hesaba bağlanmak da tüm sorunların çözümü değildir, iyi tasarlanmış herhangi bir "ticari fotokopi makinesi", tüm verileri başka bir hesaba aktaracaktır (özellikle veriler MT5'ten MT5'e kopyalanıyorsa).
Bence sadece Expert Advisor'ları değil, scriptleri, göstergeleri, kütüphaneleri ve diğer kodları da korumak gerekiyor. Ve şimdi bu bence daha ilginç ve önemli bir konu.
neden daha önemli
Bildiğiniz gibi, MQL kullanılarak uygulanabilecek tüm araçlar ikiye ayrılır: otomatik sistemler, yarı otomatik ve manuel ticaret araçları.
Ayrıca sistemlere de bir bölünme vardır: "kara kutular", "gri kutular" ve "beyaz" sistemler (açık kaynaklı ve açıkça tanımlanmış mantığı olan sistemler).
Bu nedenle, ticari sektörde sunulan neredeyse tüm MTS'ler siyah veya gri kutular olacaktır. Aynı zamanda, payları o kadar büyük olmayacak (bana göre %30-40'ı geçmeyecek). Aynı zamanda, bu tür çözümler oldukça esnek olmayacaktır (çünkü aslında sadece bir strateji uygularlar).
Ayrı komut dosyaları, kitaplıklar ve göstergeler başka bir konudur. Bu yazılım çözümleri, manuel ve mekanik ticaretin tüm alanlarında sunulacaktır. Bu durumda, kurucunun temel öğeleri olarak kullanılabilirler.
not
Burada, bence, geliştiricilerin ve kullanıcıların haklarını ihlal etmemek için mümkün olduğunca tam koruma sağlamaya değer. Bunu korumanın tek optimal yolu? anladığım kadarıyla sadece bir tane var - Demire bağlanma.
Kendinize ne düşünürseniz düşünün, demire bağlanmak uzun zamandır etkili bir korunma yöntemi olmamıştır. Bu arada, asm'ye az çok aşina olan bir kişi için (ve hiçbir şekilde birkaçı yoktur), bu tür korumanın kaldırılması birkaç dakika meselesidir. Ve neye bağlı olduğun gerçekten önemli değil. Programlama (hacker) forumlarını okuyun ve her şey sizin için netleşecektir. :) Ve "iyi organizasyon"a gelince, deney uğruna, bazı kitlesel zanaatlarınızı donanıma bağlamaya çalışın ve eminim ki bir süre sonra (yaklaşık bir veya iki ay) ne yapmak istediğimi anlayacaksınız. sana söyle.
Sanki koruma için başka seçenekler var mı?
Bunu sormana şaşırdım. Elbette var. Ve çok. Basit kod dönüştürücülerden, lisans oluşturuculardan başlayarak ve HASP vb. gibi yazılım ve donanım koruma yöntemleriyle sona erer. Ancak neredeyse hepsi, maliyet ve beyan edilen güvenilirlikten bağımsız olarak, uzun süredir saldırıya uğradı ve crackler, keygen'ler ve diğer yazılımlar İnternette serbestçe kullanılabilir. Ve bu koruma yöntemlerinin, donanıma basit bir bağlamadan birkaç kat daha güvenilir olduğunu fark etmeye cesaret ediyorum.
MT4/MT5 MQL4/MQL5 + DLL bağlamında, bağlama donanıma değil, hesap numarasına (numaralarına), gerçekler ve/veya soyadı için ad, isteğe bağlı ikinci ad için yapılabilir.
Bu, koruma açısından en basit yoldur (sadece bu özellik için) - mobil donanıma bağlanma gerektirmez.
Bu konuyu başlatırken, Metaquotes tarafından verilen bir sertifikamız ("her"!) vardı. Bunun henüz tanınan bir sertifika yetkilisi olmadığı açıktır. Ancak bu konu (sertifikaların verilmesi ve desteklenmesi), 4-ke'de sözde böyle bir kimlik doğrulama olasılığı olmasına rağmen, öldü.
Bu nedenle, yazarlığı "derin" bir gerilemeyi korumak için donanıma bağlanmayı düşünüyorum.
Fikir (ilk sayfalarda bununla ilgili), ex5 dosyasını derlemek için "normal" algoritmanın uygulanmasına indirgendi.
Aşağıdakileri hayal ettim.
Programcı, programını, yalnızca bir alt anahtar dökümü varsa - geliştiricinin ve kullanıcının anahtarlarının karmaşık bir şekilde birleştirilmesi durumunda terminal tarafından doğru bir şekilde algılanabilmesi için derleme yeteneğine sahiptir.
Geliştirici anahtarının gerekli imzaları programda ve kullanıcı imzalarında olacaktır - programda ve belirli bir terminaldeki anahtarda.
O zaman bu "lisans-alt anahtarının" varlığı, onu kullanma olasılığını açacaktır.
Nesil, Meta-editör tarafından yapılmalıdır, yani. geliştiricinin kendisi - anahtarın bir kısmını müşteriden almış.
Yani hayal...
Ama sisten başka bir şey çıkıyor.
Bana öyle geliyor ki, "MT5" sertifika yetkilisinden geliştirici anahtarları oluşturma yeteneği ve bu anahtarı ve kullanıcının anahtarının bir kısmını kullanarak ex5 şifre çözme prosedürlerinin terminalinde bulunması, bu "yerel hizmetten" daha fazla sorunu çözecektir - mekanizmalar ve yeterliliği burada hiç tartışılamaz.
;)
Anahtar korumasından bahsediyorsak, tüm İnternet aynı anahtarlarla dolu olacaktır. Yani, koruma yerine kurgu olacak ve hatta alıcıyı anahtarları yönetmeye zorlayan karmaşık bir uygulama ile.
Apple'ın AppStore/iTunes aracılığıyla çalışan bir satış planına bakmak en iyisidir. Müşteri, herhangi bir şey aktarma veya anahtar kullanma zahmetine girmeden yazılımı tıklar ve satın alır. Alıcının, satın alma geçmişinin kaydedildiği ve daha önce satın alınan programları yeniden etkinleştirmesinin mümkün olduğu MQL5.com'da bir hesabının olması yeterlidir.
Bir program satın alırken, kullanıcı kendisi için özel olarak yeniden derlenmiş / yeniden korunan bir kopya alır ve bu da satıcıyı anahtarlardan çok daha iyi korur. Tüm kişisel koruma süreci, satın alma anında otomatik olarak gerçekleşecektir.
Misyonumuz, alım/satım sürecini olabildiğince kolaylaştırmaktır.
Bence, konu başka bir önemli özelliğin tartışmasını kaçırdı - deneme süresi veya demo kısıtlamaları. Potansiyel bir alıcı haklı olarak önce ne satın aldığını görmek ister. Bunu yapmak için, satın alınan ürünün kısıtlama olmaksızın çalışacağı tarihler ve / veya saatler hakkındaki bilgileri bir yerde gizlemeniz (şifrelemeniz) gerekir. Bana öyle geliyor ki, bir çift anahtarla (ala pgp) bir şifreleme mekanizmasını dilin içine gömmek sadece bunu değil, başka birçok sorunu da çözebilir.
Yalnızca gerçek bir hesapta çalışan bir alıcıya satış yapmak mantıklıdır (pekala, satın almak için parası var/olması gerekiyor gibi görünüyor). ve eğer öyleyse, onun hesabının numarasına bağlama yapılmalıdır. ayrıca, bu numara doğrudan platformun kendisi tarafından alınmalı / verilmelidir, böylece kayıtlı hesap numarasını bulabileceğiniz ve onun yerine başka bir hesap numarası değiştirebileceğiniz hiçbir yer kalmaz. Bu numara (belki + sunucu adı, parola veya herhangi bir şey gibi başka bilgiler) şifre çözme anahtarı olarak kullanılır. Satıcı, bir çift anahtar oluşturmak ve onlarla dosyaları şifrelemek için platformda yerleşik bir mekanizmaya sahip olmalıdır.
Ne alacağız? Geliştirici, başlangıç verileriyle bir dosya oluşturur: örneğin, demonun verildiği hesap numarasını ve demonun bu hesapta çalıştığı iki tarihi içerir. bu dosya şifreli. eksper/senaryo/gösterge ile birlikte alıcıya verilir. ondan (ve sadece hesaptaki ondan) platformun kendisi hesap numarasına göre ikinci tam anahtarı alır, kodlanmış dosyayı okur ve şifresini çözer (anahtarın başka birine ait olduğu ortaya çıktıysa, sağlama toplamını kontrol edebilir ve hiçbir şey döndürmeyebilirsiniz) ve bunu bir dizi olarak uzmana/komut dosyasına/göstergesine gönderir. orada, bu verileri alan kodun kendisi, demo veya normal modda nasıl çalışması gerektiğini belirler.
Uzman Danışmanın çalışmasının parametrelerini içinde depolamanın mümkün olacağı noktaya kadar: örneğin, MA'ların kesişimi - algoritma, derlemeden sonra bile açık olacaktır, ancak bu MA'ların hangi parametrelerle kâr için çalıştığı bir sorun olarak kalabilir. "gizli" ve bu parametreleri bilmeden, geri derlenmemiş EA'daki anlam. Tabii ki burada da delikler var ve bir şeyleri kırmak mümkün olacak, ancak şifreli dosyadaki verileri bilmeden (ki asla kabul edemezsiniz), her şey hem ürünü hem de yazarından satın almaktan çok daha zor hale geliyor. ve onun desteği.
Toplam: şifreli bir kapsayıcı ile çalışmayı sağlamanız gerekir ve daha sonra ihtiyaç duyduğu verileri oraya dolduran herkes en karmaşık korumayı organize edebilecektir.
Beyler, bunun bir kitle pazarı olduğunu unutmayın.
Alıcı ve satıcının ortaklaşa müzakere edeceği, başvuru alışverişinde bulunacağı ve birbirlerine anahtar göndereceği 1:1 iş kategorileri açısından düşünüyorsunuz. Elbette bu yol size çok satış yapma fırsatı vermeyecektir. Satıcının satış uğruna parmağını bile kıpırdatmasına gerek olmadığı hızlı bir satış mağazası sunuyoruz. Ve alıcının "satın al" düğmesine basması ve herhangi bir hesap numarası veya anahtar oluşturma sorunu yaşamaması yeterlidir.
Her şey zaten düşünülmüş. Nasıl çalışacağını bilmek istiyorsanız - iPhone/iPad kullanın, onlar için AppStore'dan programlar satın alın.
Benim düşünceme göre, donanıma bağlı güvenlik seçeneği hem uygulama hem de kullanılabilirlik açısından idealdir. Bu seçenekle ilgili bir dilek daha var ama aşağıda bahsedeceğim.
Hesap numaralarına / sahibinin adına ve diğerlerine bağlantı içeren seçenekler, ilk bakışta açık olmasa da uygun değildir. İşte amatör bir alıcı her hafta komisyoncuyu değiştirmek ve yeni hesaplar açmak için ve sonra onunla ne yapmalı - her seferinde ürünü onun için derlemek ve ürünün düzinelerce ve yüzlerce kullanıcısı varsa? Anahtarlar ağa kaynaştırılabilir - ayrıca bir seçenek değildir.
Demire bağlanma pahasına. Kullanıcı ürünle birkaç makinede çalışmak isteyebilir, bu durumda birkaç donanım seçeneğine bağlanma olasılığının sağlanması gerekir. Ve eğer kullanıcı mevcut donanımı yükseltmek isterse, o zaman belki de bu gibi durumlarda yeni donanıma geçişin gerçekleştirildiği 1 saat gibi bir süre verilmesi gerekebilir. Bunun gibi bir şey. Bu noktaların dikkate alınması gerekir. Ve bir ürünü bir / iki / üç arabaya sonsuza kadar bağlamak, bir şekilde yanlış ve alıcıya haksızlıktır.
Demire bağlanma pahasına. Kullanıcı ürünle birkaç makinede çalışmak isteyebilir, bu durumda birkaç donanım seçeneğine bağlanma olasılığının sağlanması gerekir. Ve eğer kullanıcı mevcut donanımı yükseltmek isterse, o zaman belki de bu gibi durumlarda yeni donanıma geçişin gerçekleştirildiği 1 saat gibi bir süre verilmesi gerekebilir. Bunun gibi bir şey. Bu noktaların dikkate alınması gerekir. Ve bir ürünü bir / iki / üç arabaya sonsuza kadar bağlamak, bir şekilde yanlış ve alıcıya haksızlıktır.
Ancak aynı zamanda, test cihazında (test aracısı) korumalı Expert Advisor'ların çalıştırılmasına izin vereceğiz, böylece kullanıcılar Expert Advisor'ın performansını test cihazında bağımsız olarak kontrol edebilir ve bir dürtmede domuz satın alamazlar.
İçlerine tarihi kazımış uzmanlar var. Ya da tarihi bir temelden kim okuyabilir? Bu tür sahte Uzman Danışmanlar, test cihazında mükemmel sonuçlar verir. Bu tür dolandırıcılığa karşı herhangi bir koruma olacak mı? Hele ki uzman bir DLL ile gelirse...
MQL5 kodu + kötü amaçlı DLL (casus yazılımlardan virüslere) durumunda hizmet itibarı için nasıl savaşacak?