C# Programlama

C# Rastgele Sayı Üretme

C# programlama dilinde rasgele sayılar üretmek için Random sınıfı kullanılır. Random sınıfı, belirli aralıklarda rastgele sayılar üretmek için çeşitli metotlar ve özellikler sunar. Bu örnek harici sayfamızda yer alan diğer rasgele sayı kullanımı örneklerine buradan ulaşabilirsiniz.

En basit kullanımı aşağıdaki gibidir.

Bu kod, Random sınıfından bir nesne oluşturur ve ardından Next(min, max) metoduyla belirtilen aralıkta (min dahil, max hariç) rastgele bir tamsayı üretir. Örneğin, yukarıdaki kod 0 ile 99 arasında bir sayı üretecektir.

Eğer belirli bir tip değil de farklı türde rasgele sayılar üretmek istiyorsanız, Next() metodunun farklı sürümlerini kullanabilirsiniz. Örneğin, NextDouble() metodu 0 ile 1 arasında rastgele bir ondalık sayı üretir:

Bunlar sadece temel kullanımlar. Random sınıfı, daha karmaşık ihtiyaçları karşılamak için başka yöntemler de sağlar. Ancak, bu sınıfın ürettiği sayılar gerçekte tam anlamıyla rastgele değildir; çünkü başlangıç noktası ve algoritması belirli olduğu için öngörülebilirler. Güvenlik veya kriptografi gibi hassas uygulamalarda rastgelelik gerekiyorsa, Random sınıfı yerine kriptografik rasgele sayı üretebilecek sınıfları kullanmak daha uygun olabilir.

Kriptografik olarak güvenli rasgele sayılar üretmek için System.Security.Cryptography ad alanındaki sınıfları kullanabilirsiniz. Bu sınıflar, kriptografik olarak güvenli rasgele sayılar üretmek için tasarlanmıştır ve daha yüksek bir güvenlik seviyesi sağlarlar. Özellikle şifreleme, kimlik doğrulama ve diğer güvenlik odaklı senaryolarda bu tür rasgele sayılar kullanılır.

İşte C# kullanarak kriptografik rasgele sayı üretme örneği:

Bu kod, RNGCryptoServiceProvider sınıfını kullanarak kriptografik rasgele sayılar üretir. GetBytes() yöntemi, belirtilen boyutta rasgele byte’lar doldurur. Ardından, bu byte’lar BitConverter.ToInt32() yöntemi kullanılarak bir tamsayıya dönüştürülür.

Kriptografik olarak güvenli rasgele sayılar, RNGCryptoServiceProvider sınıfı kullanılarak sağlanır, çünkü bu sınıf işletim sistemi tarafından sağlanan kriptografik servislerin bir parçasıdır. Bu nedenle, bu sınıfın ürettiği rasgele sayılar, sadece güvenlik açısından yüksek standartlara sahip değil aynı zamanda tekrarlanabilirlik açısından da daha iyidir.

Yorum yap

Web Tasarım & Programlama sitesinden daha fazla şey keşfedin

Okumaya devam etmek ve tüm arşive erişim kazanmak için hemen abone olun.

Okumaya devam et