Konu: sifreli yazma
Arkadaşlar sql e kredi kartlarının numarasını kaydedıyorum ama
kart numaralarının görünmesini istemiyorum nasıl bir yontem uygulamalıyım
Giriş yapmadınız. Lütfen giriş yapın yada kayıt olun.
Arkadaşlar sql e kredi kartlarının numarasını kaydedıyorum ama
kart numaralarının görünmesini istemiyorum nasıl bir yontem uygulamalıyım
http://www.fox4um.com/topic/1324/crypto/
ugur bunlar şifreliyor ama geri nasıl acamam ...
SET PROCEDURE TO mdigest5
MD5=CREATEOBJECT("MD5")
MD5.tohash="MyPassWord"
? MD5.compute()
? MD5.compute()
..
..
..
Bu kodu bir dene istersen : Örnekte hem şifreliyor, hem şifreyi açıyor.
* Public Code From Foxpro Forums
* I dont remember the author
*!* That having been said, I have also used Microsoft's CAPICOM in the past. Here's an example of it's use...
#DEFINE CAPICOM_ENCRYPTION_ALGORITHM_RC4 1 && Stream Cipher
#DEFINE CAPICOM_ENCRYPTION_ALGORITHM_DES 2 && Block Cipher
#DEFINE CAPICOM_ENCRYPTION_ALGORITHM_3DES 3 && Block Cipher
#DEFINE CAPICOM_ENCRYPTION_ALGORITHM_AES 4 && Block Cipher
#DEFINE CAPICOM_ENCRYPTION_KEY_LENGTH_MAXIMUM 0
#DEFINE CAPICOM_ENCRYPTION_KEY_LENGTH_40_BITS 1
#DEFINE CAPICOM_ENCRYPTION_KEY_LENGTH_56_BITS 2
#DEFINE CAPICOM_ENCRYPTION_KEY_LENGTH_128_BITS 3
#DEFINE CAPICOM_ENCRYPTION_KEY_LENGTH_192_BITS 4 && Only for AES
#DEFINE CAPICOM_ENCRYPTION_KEY_LENGTH_256_BITS 5 && Only for AES
#DEFINE CAPICOM_ENCODE_BASE64 0
#DEFINE CAPICOM_ENCODE_BINARY 1
#DEFINE CAPICOM_ENCODE_ANY -1
#DEFINE MYSECRETKEY "MySuperSecret32ByteKey0123456789"
LOCAL loEncryptedData, lcPlainText, lcCipherText, loDecryptedData
*!* Encrypt
m.loEncryptedData = CreateObject("CAPICOM.EncryptedData")
m.lcPlainText = "Visual FoxPro Rocks!"
m.loEncryptedData.Content = m.lcPlainText
m.loEncryptedData.SetSecret(MYSECRETKEY)
m.loEncryptedData.Algorithm.Name = CAPICOM_ENCRYPTION_ALGORITHM_AES
m.loEncryptedData.Algorithm.KeyLength = CAPICOM_ENCRYPTION_KEY_LENGTH_256_BITS
m.lcCipherText = m.loEncryptedData.Encrypt(CAPICOM_ENCODE_ANY)
?"Original Plain Text:" + m.lcPlainText
?"Raw Binary: " + m.lcCipherText
?"Hex Encoded: " + STRCONV(m.lcCipherText,15)
?
RELEASE loEncryptedData
m.loEncryptedData = .NULL.
*!* Decrypt
m.loDecryptedData = CreateObject("CAPICOM.EncryptedData")
m.loDecryptedData.SetSecret(MYSECRETKEY)
m.loDecryptedData.Decrypt(m.lcCipherText)
m.lcPlainText = m.loDecryptedData.Content
?"Decrypted Cipher Text: " + m.lcPlainText
RELEASE loDecryptedData
m.loDecryptedData = .NULL.
*********************************
Allah razi olsun. Bu gunlerde derdimin _crypt.vcx buglari oldugunu nerden bildin de yazdin:) .Net ile yazmistim ki bunu gordum, .Net gerekmemesi isime geldi.
Ups... Ben bişey yapmadım.
ben craig boyd'un .fll dosyasını kullanıyorum. hem şifreleme var hem de hash.
Bunda da sifreleme var. Yukarida vermis Ugur:) Ben de .Net ile yazdim ama bunu tercih ettim Capi kullandigi icin, COM'u oldugunu bilmiyordum.
bunda hash yok galiba. uğur'un verdiği mi daha iyi craig boyd'unkisi mi?
Bunda hash de var (Capicom'un varligini ogrenince MSDN'de dokumentasyonuna bakmak yetti). Craig'inki hakkinda fikrim yok, ihtiyacim da yok. Onu indir, kur, anla, kullan ugrasmak zor. Karsilastiramam, gerek de gormedim.
Bu baya windows ile zaten install edilen Capicom.dll'i kullaniyor. Hicbir zahmete girmeden dogrudan kullaniyorum. Yoksa birseyler indirecek filan olsam dedigim gibi zaten kendim .Net ile yazdim. Onu tercih ederdim. (Tam benimkini yazdim, kurulum icin msi yaptim, testlerini tamamladim fox4um'a bakiniyim dedim bu cikti karsima - msi gerekmiyor diye tercih ettim yoksa msi derdim olmasa .Net'deki tercihim olurdu sifre yanisira vektoru de ben belirliyorum filan:)
burdaki vektör nedir?
bütün windows versiyonlarında hazır kuruluysa bu daha iyi tabii ki. ama ilerde bir versiyon değişikliğiyle birşey olabilir mi acaba? foxpro'daki daha önce ne oldu biliyoruz.
craig'inki sadece bir .fll dosyası. kurulum filan yok. ben molebox sayesinde onu da .exe içine ekleyebiliyorum. bu yüzden install ya da hacklenme (büyük oranda) sorunum yok.
bu arada geçenlerde bir şampiyonlar ligi alıcaz bu sene diyordun? noldu ne zaman olacak o iş? nisan-mayıs?
Vektor sifrelemede kullanilan bir element. Genelde 16 byte.
Capicom.dll giderse diyorsun:) Iyi diyorsun da o zaman ortada VFP diye birsey kalacak mi. Su anda capicom'un Windows 7/2008'de desteklendigini biliyoruz. VFP'nin bile oralarda desteklendigini rahatlikla soylemek mumkun degil.
Alicaz diyordum cunku bana bu guveni asilayan bir takim var.
Alamadik ama Turkiye'nin sampiyonlar ligi finalinde oynayan ilk kulup takimi olduk, idare et simdilik. Tum takimi bu vesileyle gonulden tebrik ediyorum. Eger voleybol federasyonu hemen Fenerin bu basarisinin onunu kesmek icin kollari sivadiysa var bi bildikleri, sen yen yazip 1907'ye gondermeyi ihmal etme
şu ana kadar craig boyd'un fll sini kullanıyordum. tam capicom u kullanmaya başladım. bu makale çıktı karşıma:
http://blogs.msdn.com/b/karinm/archive/ … ows-7.aspx
gerçi capicom.dll yi molebox ile paketlesem bir sorun çıkmaz sanırım. çıkmaz di mi?
bunu indiriyorum. sanırım problem yok bu sayede:
http://www.microsoft.com/downloads/tr-t … 88EA5896F6
Metin Çetin Üstad 'ın bir tool u var; Crypt / DeCrypt için. .NET te yazmıştı ve VFP ye implemente edilebiliyor. Ben onu kullanıyorum ve çok memnunum. Yanlış hatırlamıyorsam Üstat forum a eklemişti. ( foxite de de olabilir )
CAPICOM'u unut.
of. tam işimi bitirmiştim...
Metin Çetin Üstad 'ın bir tool u var; Crypt / DeCrypt için. .NET te yazmıştı ve VFP ye implemente edilebiliyor. Ben onu kullanıyorum ve çok memnunum. Yanlış hatırlamıyorsam Üstat forum a eklemişti. ( foxite de de olabilir )
onu verir misin?
Linki aşağıda.
http://www.foxite.com/archives/varchar- … 259167.htm
Kullanıma örnek ( Örnek forumda da bulunsun diye Foxiteden aynen yapıştırdım. )
* Author : Cetin BASOZ
Local lcTestText, lcKey, lcVector
TEXT TO lcTestText noshow
This is the text that we are going to encrypt.
To easily save in a memo or text based environment crypted form is base64 encoded.
ENDTEXT
lcKey = Left("MySecretKeyThatIsAtLeast32BytesInLength", 32)
lcVector = Left("InitVector16BytesInLength",16)
Local loCryptor As 'DotnetUtils.CB'
loCryptor=Createobject('DotnetUtils.CB')
Local lcEncrypted, lcDecrypted
lcEncrypted = loCryptor.Encrypt_3( m.lcTestText, m.lcKey, m.lcVector )
lcDecrypted = loCryptor.Decrypt_3( m.lcEncrypted, m.lcKey, m.lcVector )
? 'Encrypted'
? '--------------------------------------------'
? m.lcEncrypted
? '--------------------------------------------'
? 'Decrypted back'
? '--------------------------------------------'
? m.lcDecrypted
http://www.foxite.com/uploads/bf541b34- … 6f294b.zip
bazı sorularım var:
1-içindekileri anlatan bir döküman var mı? mesela hash'ı kullanamadım.
2-hangi net framework ün yüklenmesi lazım?
yanındaki .tlb dosyası gerekli mi?
Metin;
1) Ben kod örneğini kendime göre revise ettim. Döküman bildiğim kadarı ile yok. Ama istersen özel olarak Çetin Üstad a sorabilirsin.
2) .Net 3.5 ve sonrası yetiyor.
Ben sadece MSI dosyayı sisteme kurdum. TLB için ayrı bir şey yapmadım.