问题列表 - 第48666页

为什么我们使用"盐"来保护我们的密码?

我正在阅读本教程,我遇到了以下关于加密的讨论.最后写了

在最后一行中,我们使用密码对盐进行了哈希处理,产生了一个几乎无法破解的加密密码

但在我看来,一个拥有encrypted_passwordsalt可以做"彩虹"技巧的黑客就像我们使用的那样salt.

那么,我哪里错了?

谢谢!

$ rails console
>> require 'digest'
>> def secure_hash(string)
>>   Digest::SHA2.hexdigest(string)
>> end
=> nil
>> password = "secret"
=> "secret"
>> encrypted_password = secure_hash(password)
=> "2bb80d537b1da3e38bd30361aa855686bde0eacd7162fef6a25fe97bf527a25b"
>> submitted_password = "secret"
=> "secret"
>> encrypted_password == secure_hash(submitted_password)
=> true
Run Code Online (Sandbox Code Playgroud)

这里我们定义了一个名为secure_hash的函数,它使用一个名为SHA2的加密哈希函数,它是SHA系列哈希函数的一部分,我们通过摘要库将它们包含在Ruby中.7确切地知道这些哈希函数是如何工作的并不重要.为了我们的目的,重要的是它们是单向的:没有计算上易于理解的方法来发现它

2bb80d537b1da3e38bd30361aa855686bde0eacd7162fef6a25fe97bf527a25b是字符串"secret"的SHA2哈希值.

但是,如果你考虑一下,我们仍然有一个问题:如果攻击者掌握了哈希密码,他仍然有机会发现原件.例如,他猜测我们使用了SHA2,因此编写一个程序来将给定的哈希与潜在密码的哈希值进行比较:

>> hash = "2bb80d537b1da3e38bd30361aa855686bde0eacd7162fef6a25fe97bf527a25b"
>> secure_hash("secede") == hash
=> false
>> secure_hash("second") == hash
=> false
>> secure_hash("secret") == hash
=> true
Run Code Online (Sandbox Code Playgroud)

所以我们的攻击者对任何密码为"secret"的用户都有一个匹配 - 坏消息.这种技术被称为彩虹攻击. …

encryption

19
推荐指数
2
解决办法
1万
查看次数

你能识别用javascript编写的这个哈希函数吗?

有谁能识别这个哈希函数?它是用Javascript编写的.我想用另一种语言(PHP)复制它.我觉得很难相信这个功能像人一样繁琐.该函数被称为"cValue"...也许这将有所帮助.提前致谢!

function (s) {
    function L(b, a) {
        return (b << a) | (b >>> (32 - a))
    }
    function K(k, b) {
        var F, a, d, x, c;
        d = (k & 2147483648);
        x = (b & 2147483648);
        F = (k & 1073741824);
        a = (b & 1073741824);
        c = (k & 1073741823) + (b & 1073741823);
        if (F & a) {
            return (c ^ 2147483648 ^ d ^ x)
        }
        if (F | a) {
            if (c & …
Run Code Online (Sandbox Code Playgroud)

javascript hash function

2
推荐指数
1
解决办法
517
查看次数

PL/SQL拆分,根据停电日期将日期分为新日期!

我可以说一个"旅行日期"和黑色日期.我会根据停电日期将旅行日期分成几部分.

注意:旅行日期可以介于两者之间 0 - 9999 99 99

样品:

Travel Date:
Travel | START DATE | END DATE
T      | 2011 01 04 | 2011 12 11

Black Out Dates:
BO   | START DATE | END DATE
A    | 2010 11 01 | 2011 02 11
B    | 2011 01 20 | 2011 02 15
C    | 2011 03 13 | 2011 04 10
D    | 2011 03 20 | 2011 06 29
Run Code Online (Sandbox Code Playgroud)

例外结果:

New Travel  | START DATE | END …
Run Code Online (Sandbox Code Playgroud)

oracle plsql split date

5
推荐指数
2
解决办法
2309
查看次数

使用数据注释分配DateTime的格式?

我的视图模型中有这个属性:

[DataType(DataType.DateTime)]
public DateTime? StartDate { get; set; }
Run Code Online (Sandbox Code Playgroud)

如果我想显示日期,或用日期填充文本框,我有以下内容:

<%: Model.StartDate %>

<%: Html.TextBoxFor(m => m.StartDate) %>
Run Code Online (Sandbox Code Playgroud)

每当显示日期时,它显示为:01/01/2011 12:00:00 AM

但我想只显示01/01/2011

有没有办法应用带数据注释的显示格式?我不想去每个显示日期的实例,并添加一些代码来格式化它.

c# asp.net asp.net-mvc data-annotations

89
推荐指数
8
解决办法
18万
查看次数

如何单元测试电子邮件发送?

我想测试我的电子邮件发送功能使用.NET(C#)框架或任何兼容的库,任何建议如何做?

.net c# unit-testing

22
推荐指数
4
解决办法
1万
查看次数

MKMapView和addOverlay - 从kml解析叠加层

我正在尝试为简单的iPhone应用程序制作地图叠加层.问题是,即使应用程序没有错误,折线也不会显示在地图上.控制台说[overlay lastObject]实际上是MKPolyline.有人可能会看到我在这里做错了什么...我是iPhone应用程序开发的新手?

这是我的mapView控制器的相关代码:

- (void)viewDidLoad {   
    [super viewDidLoad];    

    CGRect mapFrame = CGRectMake(0.0f, 31.0f, 320.0f, 370.0f);  
    mapView = [[MKMapView alloc] initWithFrame:mapFrame];

    MKCoordinateRegion region;
    MKCoordinateSpan span;
        span.latitudeDelta=.02;
        span.longitudeDelta=.02;

    CLLocationCoordinate2D location;
        location.latitude = 29.43421;
        location.longitude = -98.48436; 

        region.span=span;
        region.center=location; 

    NSURL *url = [NSURL URLWithString:@"They asked me not to post this... It is a valid KML file though"];
    kml = [[KMLParser parseKMLAtURL:url] retain];

    // Add all of the MKOverlay objects parsed from the KML file to the map.
    NSArray *overlay = [kml overlays];      
    NSLog(@"TEST: …
Run Code Online (Sandbox Code Playgroud)

iphone overlay objective-c mkmapview

2
推荐指数
1
解决办法
3166
查看次数

如何将SQL查询保存到cookie - 分页

这不行.我不是很好用PHP,我似乎无法找到正确的方法来做到这一点.

$q2= "select * from cars";
setcookie("query", $q2, time()+3600);
Run Code Online (Sandbox Code Playgroud)

感谢大家的建议,我现在用过会话,那好吧?然而,我仍然生病,试着尽我所能解释.

我正在使用分页,用户搜索汽车,按区域,制作,模型等,当他们提交时,文件检查他们希望搜索的内容并将正确的sql存储在会话中,然后另一个文件使用此会话来运行分页.第一页显示正确,但第二页显示,就像用户搜索了所有可用的汽车一样.我知道它为什么这样做,因为当页面刷新检查用户正在搜索的内容的文件时,用户还没有选择任何特定的内容.我想我只需要移动一些东西,但无法解决问题.有人可以帮帮我吗!

php

1
推荐指数
1
解决办法
1039
查看次数

如何使用Reflection为对象上的所有DateTime属性设置DateTime.Kind

在我的应用程序中,我通过Web服务检索域对象.在Web服务数据中,我知道所有日期值都是UTC,但Web服务不会将其xs:dateTime值格式化为UTC日期.(换句话说,该字母Z不会附加到每个日期的末尾以表示UTC.)

我无法在此时更改Web服务的行为方式,但作为一种解决方法,我创建了一个方法,在Web服务中的对象被反序列化后立即调用该方法.

    private void ExplicitlyMarkDateTimesAsUtc<T>(T obj) where T : class
    {
        Type t = obj.GetType();

        // Loop through the properties.
        PropertyInfo[] props = t.GetProperties();
        for (int i = 0; i < props.Length; i++)
        {
            PropertyInfo p = props[i];
            // If a property is DateTime or DateTime?, set DateTimeKind to DateTimeKind.Utc.
            if (p.PropertyType == typeof(DateTime))
            {
                DateTime date = (DateTime)p.GetValue(obj, null);
                date = DateTime.SpecifyKind(date, DateTimeKind.Utc);
                p.SetValue(obj, date, null);
            }
            // Same check for nullable DateTime.
            else if …
Run Code Online (Sandbox Code Playgroud)

c# reflection datetime

23
推荐指数
1
解决办法
4万
查看次数

为什么不在任何Maven存储库中安装Android SDK Jars?

有没有理由说Android工具链和开发包不在Maven CEntral存储库中?真的只是没人做过吗?或者是否存在一些许可问题?我的意思是它都是开源的吗?(Google API除外).

我很想把它自己放在一个非核心的回购中,但我只是想确定其他人还没有这样做,而且我不会因此而与任何律师对应或打电话.

android repository maven

44
推荐指数
4
解决办法
2万
查看次数

如何在iPhone中的不同视图之间移动

我的iPhone应用程序中有一个登录视图.如果用户成功验证我想将他从LoginViewController屏幕移动到MyViewController屏幕.以下是我的代码,

if([serverOutput isEqualToString:@"Yes"]){
        NSLog(@"Authentication correct");

        if(self.myviewController==nil)
        {
            MyViewController *myController=
            [[MyViewController alloc]initWithNibName:@"MyView" bundle:[NSBundle mainBundle]];
            self.myviewController=myController;
            [myController release];
        }
}
Run Code Online (Sandbox Code Playgroud)

但是,即使身份验证正确,当我点击"登录"按钮时,应用程序也无法执行任何操作.由于我是iphone应用程序开发的新手,任何人都可以帮我解决代码问题.

iphone xcode uiviewcontroller ios4

0
推荐指数
1
解决办法
5659
查看次数