小编Yes*_*ses的帖子

没有证书的MS SQL列加密

我正在尝试加密SQL Server表中的一个敏感列.我用这个脚本尝试了AES256加密,它完美无缺.但我不想在我的SQL Server上创建证书或对称密钥,因为它可能会在以后出现安全问题.如何在查询中使用单个密码或密钥加密数据?这种方法的另一个问题是,我只能使用一个主密码进行加密.

    CREATE MASTER KEY ENCRYPTION
    BY PASSWORD = '$Passw0rd'
    GO

    CREATE CERTIFICATE AESEncryptTestCert
    WITH SUBJECT = 'AESEncrypt'
    GO

    CREATE SYMMETRIC KEY AESEncrypt
    WITH ALGORITHM = AES_256 ENCRYPTION -- TRIPLE_DES ENCRYPTION
    BY CERTIFICATE AESEncryptTestCert;


   OPEN SYMMETRIC KEY AESEncrypt DECRYPTION
   BY CERTIFICATE AESEncryptTestCert 
   SELECT ENCRYPTBYKEY(KEY_GUID('AESEncrypt'),'The text to be encrypted');  
Run Code Online (Sandbox Code Playgroud)

sql sql-server encryption aes x509certificate

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

使用所有表单数据将JQuery ajax文件上载到ASP.NET

我正在建立一个网站,其中有一个职业页面,其中包含用于恢复上传的输入文件HTML控件.使用JQuery将表单值POST到ASPX页面时,除了文件上载外,一切正常.如何使用JQuery在一个AJAX请求中发布每个字段(包括文件)?我在Google中看到的示例只处理文件上传,而不处理其他字段.这是我的JQuery,没有制作用于文件上传的ASPX.

  <script type="text/javascript">

   $(document).ready(function(e) {

       // File variable
       var files;

       // Add events
       $('#resume').on('change', prepareUpload);

       // Grab the files and set them to our variable
       function prepareUpload(event)
       {
         files = event.target.files;
       }



   $( "#submit_btn" ).click(function( ) {

       var fileData = new FormData();
       $.each(files, function(key, value)
       {
           fileData.append(key, value);
       });



       var formMessage = tinyMCE.get('message').getContent();
       var formName = $('.contact-container #name').val();
       var formPhone = $('.contact-container #phone').val();
       var formEmail = $('.contact-container #email').val();
       var formApplyFor = $('.contact-container #applyfor').val();

    // Get some values from elements on …
Run Code Online (Sandbox Code Playgroud)

javascript asp.net ajax jquery

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

SQL HASHBYTES返回不同的值

在我的应用程序中,HASHBYTES SQL函数为相同的字符串返回不同的值.以下是我的用户创建代码.

Guid fillerG = Guid.NewGuid(); 
 using (SqlCommand com = new SqlCommand("INSERT INTO App_Users (UserName, PasswordHash, PasswordSalt) VALUES ('" + userNameTxt.Text + "', HASHBYTES ( 'SHA1', CONVERT(NVARCHAR(100), '" + userPassword.Text +          fillerG.ToString() + "') ),  '" + fillerG.ToString() + "'; ", con))
{
     com.ExecuteNonQuery();
}
Run Code Online (Sandbox Code Playgroud)

当我在登录页面中比较上面插入的行时,它不匹配.这是我的比较脚本.

SqlCommand loginCom = new SqlCommand("select COUNT(UserID) FROM App_Users WHERE UserName = '" + Login1.UserName + "' AND PasswordHash = HASHBYTES('SHA1', '" + Login1.Password + "' + CONVERT(NVARCHAR(36), PasswordSalt))", loginCon);
Run Code Online (Sandbox Code Playgroud)

第一个代码将passwordHash存储为:

0xDAC9280F85B40C06314228876717E342432807DB
Run Code Online (Sandbox Code Playgroud)

但是在查询窗口中,具有相同值的HASHBYTES函数返回:

 0xA561FBD35713F922AD761594658C193F12B82791
Run Code Online (Sandbox Code Playgroud)

更新: …

c# sql sql-server asp.net

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

如何按日期排序前 10 个不同行

我有一个包含这样记录的数据表......

JID                      Date                     RecentChatString
----------------------------------------------------------------------- 
abc@gmail.com         11/Nov/2013 11:53:00        Hi 
abc@gmail.com         11/Nov/2013 11:53:10        Hello 
abc@gmail.com         11/Nov/2013 11:54:00        Good Morning 
def@gmail.com         11/Nov/2013 12:03:00        Ok 
abc@gmail.com         11/Nov/2013 12:05:10        Please reply 
def@gmail.com         11/Nov/2013 12:15:00        Good after noon 
def@gmail.com         11/Nov/2013 12:15:50        Ok bye
Run Code Online (Sandbox Code Playgroud)

我想要获取按日期排序的前 10 个不同记录,并且仅表示每个 JID 最近的聊天记录。

JID                      Date                     RecentChatString
-----------------------------------------------------------------------
abc@gmail.com         11/Nov/2013 12:05:10        Please reply
def@gmail.com         11/Nov/2013 12:15:50        Ok bye
Run Code Online (Sandbox Code Playgroud)

现在我有这样的代码。我可以使用此代码获取按日期排序的前 10 条记录。但是,它包含重复的JID's. 请帮我。(recent_index是一个数据表)

DataRow recent_dr = recent_index.NewRow();
recent_dr["JID"] = RosterId;
recent_dr["Date"] = DateTime.Now;
recent_dr["RecentChatString"] = _chatline;
recent_index.Rows.Add(recent_dr);

DataTable dtt = …
Run Code Online (Sandbox Code Playgroud)

c# linq datatable dataset

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

编写代表而不会弄乱代码

我正在写这样的代表.

  delegate void MyMethod(string arg1, string arg2);
  MyMethod mm;
Run Code Online (Sandbox Code Playgroud)

我不知道为什么它需要两行来声明一个委托.如果我的班级有20名代表,我需要编写40行代码.任何人都可以告诉我在一行代码中写这个吗?提前致谢.

c# delegates

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

重用Android中的MainActivity

我的Android应用程序中有一个MainActivity,我在RecyclerView中显示了一个项目列表.

每个Item可以有多个子项,子项也可以有自己的子项(如树).我想为主项和子项显示相同的活动,但在ActionBar上显示后退箭头.

是否可以重用MainActivity?

android android-studio

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