Xenforoda sifreleme türünü nasıl sha256 nasıl yaparım
Php'de hash tanımlı ise zaten sha256 kullanıyor. İncelemek isterseniz xenforo dosyalarınıza giderek şu yolu bulun;src\XF\Authentication\Core.php
<?php
namespace XF\Authentication;
class Core extends AbstractAuth
{
/**
* Hash function to use for generating salts and passwords
*
* @var string
*/
protected $hashFunc = 'sha1';
protected function setup()
{
if (!empty($this->data['hashFunc']))
{
$this->hashFunc = $this->data['hashFunc'];
}
else
{
$this->hashFunc = extension_loaded('hash') ? 'sha256' : 'sha1';
}
}
protected function createHash($hash)
{
switch ($this->hashFunc)
{
case 'sha256': return hash('sha256', $hash);
case 'sha1': return sha1($hash);
default: throw new \InvalidArgumentException("Unknown hash type");
}
}
protected function getPasswordHash($password, $salt)
{
return $this->createHash($this->createHash($password) . $salt);
}
public function generate($password)
{
if (!is_string($password) || $password === '')
{
return false;
}
$salt = $this->createHash(\XF::generateRandomString(20, true));
return [
'hash' => $this->getPasswordHash($password, $salt),
'salt' => $salt,
'hashFunc' => $this->hashFunc
];
}
public function authenticate($userId, $password)
{
if (!is_string($password) || $password === '' || empty($this->data))
{
return false;
}
$userHash = $this->getPasswordHash($password, $this->data['salt']);
return \XF\Util\Php::hashEquals($this->data['hash'], $userHash);
}
public function getAuthenticationName()
{
return 'XF:Core';
}
}
$2y$10$kk0nygUU10Bzw6UtmNRnhenD06YqsjkkAxQHfBEOsgIG5Xzxhitam
a:1:{s:4:"hash";s:60:"$2y$10$r06umS73qNSdqL3046Qp.e05LTMM1vqR1/8zvRxBjqQIH29snw.x2";}Oradaki fonksiyonda php tarafında sha256 varsa onu kullanır yoksa sha1 kullanır. Yani şöyle anlatayım daha açıklayıcı olsun:
extension_loaded fonksiyonu php hash tarafında sha256 mı yüklü yoksa sha1 mi yüklü bakıyor ikisinden hangisi yüklü ise onunla hash üretiyor.
XenForo 2'de zaten DB tarafında şifre saklama olayı değişti. Database üzerinden xf_user_authenticate-data.bin dosyasına bakarsanız oluşturduğu kodu görebilirsiniz. Ben kendi local sistemim de baktığımda şu şekilde bir kodun oluştuğunu görüyorum:$2y$10$kk0nygUU10Bzw6UtmNRnhenD06YqsjkkAxQHfBEOsgIG5Xzxhitam
Malesef oyle bir kaynak bulamadimAslında senin sorun tam olarak şu. Authme ile XenForo’yı nasıl entegre ederim.
Verdiğin link tarihine bakılırsa hem Authme hem de XenForo eski versiyonları geçiyor. Bence her iki tarafta hangi versiyonları kullanıyorsun o şekilde nette arattırma yap, bakalım neler bulacaksın.
Emin olmamakla beraber; eklenti klasöründe hashes.json dosyası olması lazım. Uyarı veren dosyanın kodunu oradan silersen uyarı kalkabilir.Bir eklentide değişiklik yaptım ve uyarı alıyorum (hashes) dosyasını nasıl düzenleyebilirim?
Farklı bir görünüm için alternatif header yapısını kolayca seçebilirsiniz.
Tam ekran ve dar ekran modları arasında geçiş yapın.
Izgara modu ile içerikleri kolayca inceleyin ve düzenli bir görünüm elde edin.
Arka plan görselleriyle içeriğinizi düzenli ve görsel olarak zengin bir şekilde görüntüleyin.
Yan paneli gizleyerek daha geniş bir çalışma alanı oluşturun.
Yan paneli sabitleyerek sürekli erişim sağlayın ve içeriğinizi kolayca yönetin.
Temanızın yanlarına box tarzı bir çerçeve ekleyebilir veya mevcut çerçeveyi kaldırabilirsiniz. 1300px üstü çözünürler için geçerlidir.
Köşe yuvarlama efektini açıp kapatarak görünümü dilediğiniz gibi özelleştirin.
Tarzınızı yansıtan rengi belirleyin ve estetik uyumu sağlayın.
Bu sitenin çalışmasını sağlamak için temel çerezleri ve deneyiminizi geliştirmek için isteğe bağlı çerezleri kullanıyoruz.