精华内容
下载资源
问答
  • 抖音上热门规则 视频md5查看器

    千次阅读 2019-03-26 12:51:05
    抖音上热门规则 视频md5查看器 自2012年推出今日头条APP,依托“算法编辑+智能分发”,头条系已发展为横跨资讯分发和短视频的巨兽。,除非你能做出好莱坞大片,那确实会有流量倾斜。养号是按照一个正常的逻辑去养...

              抖音上热门规则 视频md5码查看器
             自2012年推出今日头条APP,依托“算法编辑+智能分发”,头条系已发展为横跨资讯分发和短视频的巨兽。,除非你能做出好莱坞大片,那确实会有流量倾斜。养号是按照一个正常的逻辑去养,要有一个主次性,你喜欢什么,你就会多看什么,可见在“有限”开放这一方面,腾讯并不仅仅针对抖音。,其实,在这流量横飞的抖音里,引流、变现也无非就是通过以下两种方式。 

     


            
              在短视频操作中,视频修改的作用显得尤为重要,这里介绍几款常见的工具

     

        


             当我们看到短视频平台动辄几亿的用户流量的时候,其实无法真正掩盖现实的尴尬。
             很后,像网红papi酱就曾说过:“拥有一个创意的点子不难,难的是持续不断推陈出新。,始终蜷曲在巨头的怀抱,毕竟不是一件长远的事情,短视频行业的真正未来依然在于本身的发展上。,竖屏微网剧作为一种新的娱乐内容形态,拍摄手法、表演方式等与传统网剧、电视剧肯定有着非常大的差别。
             抖音上热门规则
             其实,随着现在抖音的火热,逐渐的它也成为了一个具有超高流量和红利的APP,不仅是各路产品、商家在抖音火出天际,那些抖音达人们更是可以利用它实现躺着赚钱。,想要在互联网做生意赚钱,一定要明白一个道理,人在哪里,钱跟机遇就在哪里!,抖音刚进入印尼之时也是红的发紫,稳居印尼视频软件下载量top ,多少秒的作品更容易被推荐呢?正常是8到15秒,如果是讲课类的视频尽量控制在30秒以内,如果是剧情类的视频控制在50秒以内

     



            在当前形势之下,工欲善其事必先利其器,软件的作用就显得尤为重要

             ①保证视频的“干净度”:首先一个视频的清晰度就不用说了,就算没有高上大的相机,现在的手机像素也是可以完全胜任的。其次,要记住的是千万不要把其他软件的LOGO、水印放在抖音的短视频上,这样,不仅影响粉丝观看,还可能遭到抖音的限流,得不偿失。,点赞量+评论量+ 转发量+完播率
             国内月活冲破5亿,日活突破2.5亿,在成立不到三年的时间中,抖音就已创造出流量奇迹,在数据上直逼国内第一流量巨头腾讯。,对于初期的抖音用户来说,只能发布时长15秒的内容,要想保证视频的完整度,那么,时长就不得低于7秒针,这样,视频不仅可看性强,上推荐的几率也会增加。
             抖音上热门规则
             视频什么时候发布更容易被推荐?,竖屏微网剧作为一种新的娱乐内容形态,拍摄手法、表演方式等与传统网剧、电视剧肯定有着非常大的差别。,人尽皆知,如今的抖音真的是火的一塌糊涂,日活跃两亿人次的战绩,可以说已然成了同等APP里的佼佼者,且现如今的抖音,不仅仅是在国内有着超高人气,在国外,同样受到了热烈的欢迎。,当短视频市场的繁华落尽,回归商业本质或许是当下正道。告别表面的虚假逻辑,真正把短视频行业的发展落地到具体的商业上,探索一条真正适合商业本质的发展道路,或许才是真正能够推动短视频行业发展正道所在。,哇哦,几十万的广告费买来几十秒的视频播放值吗?全民的“支付宝”,男人的“奥迪”女人的迪奥,餐饮界的“汉堡王”这些品牌商无一不在抢占市场,甚至我们从小吃到大的旺仔QQ糖也身先士众。

     



             
              以下视频软件截图

     

        

           随着互联网的快速发展下,身处互联网身下的各行各业也都是在以突飞猛进的速度前进,像大家所熟知了解的小程序、区块链、新零售等等,当然,这其中也包括很近几年很火热的短视频领域。,开启后系统将根据后台的内容分类,过滤掉不一定适宜青少年浏览的内容,且用户无法进行充值、打赏等操作;用户开通、关闭青少年模式均需输入提前设置的独立密码。,抖音在2018年十月份公布的数据是日活用户日均使用时长70分钟,如果你连一个日活用户都不是,抖音凭什么给你流量?,不论是蹭热度去假冒,还是去加盟,都足以说明答案茶因抖音而火了,并且做到了线下引流。,说起短视频,想必大家都早已玩的滚瓜烂熟了吧,不论是像“接地气”的快手,还是以模仿为主的小咖秀,再或是美拍、秒拍、微视等,均都以不同的定位模式,在短视频的浪潮里稳步前行。
           

             定位就是选取了领域之后,尽可能的在选取细分领域,尽可能只生产这一个细分领域的视频,比如我选择宠物,细分下去就有宠物狗,宠物狗里面我就细分下去萨摩耶。
             千万不要通过第三方刷粉刷赞,既浪费钱又毁了账号,依附于巨头的怀抱让短视频缺少对于商业世界的认知。,如何知道自己的作品有没有被系统屏蔽呢?你可以转发自己的作品到微信或者朋友圈,如果下载不了,说明你的作品被屏蔽了
             抖音上热门规则
             这一点相信很多做互联网营销的公司已经深有体会了,产品推广难、用户点击低、入不敷出是目前不少企业的现状,尤其是做搜索引擎排名的企业更是面临一波三折的降权。,即便近期面对着网络大力整顿、腾讯准备砸30亿做微视,也挡不住抖音火爆的势头 。,互联网领域的竞争一直是大鱼吃小鱼,在头条崛起的过程,或主动或被动,与竞争对手的碰撞延续了整个发展历史。,即使是公众号运营者也只能在后台看到粉丝的昵称、地区、签名相关信息。当然双方可以通过留言自己微信号的方式加好友,就另当别论了。

     



            抖音上热门规则 视频md5码查看器  
           把握时间,短视频的春天还未过去,希望大家都能抓住机会
     
    展开全文
  • 查看APK中MD5签名的方法

    千次阅读 2016-10-10 18:24:11
    1. 先将apk文件重命名为zip文件,在 解压zip,其中的META-INF/CERT.RSA文件即MD5签名文件 2. cmd下打开黑窗口,敲入如下命令: keytool -printcert -file //rsa文件所在路径  证书指纹中的MD5去掉...

    事先需要自己有JDK环境变量

    1. 先将apk文件重命名为zip文件,在 解压zip,其中的META-INF/CERT.RSA文件即MD5签名文件


    2. cmd下打开黑窗口,敲入如下命令:

    keytool -printcert -file //rsa文件所在路径
      证书指纹中的MD5去掉冒号


    展开全文
  • C# 获取MD5 (MD5计算,MD5小工具)

    千次阅读 2016-11-12 14:46:53
    拖拽文件或文件夹至getMD5.exe上,可自动计算文件或文件夹下所有文件的MD5值,保存至文件MD5.txt中 方式三: 通过cmd命令调用(类似方式二) REM 获取1.txt和files目录下所有文件的MD5值 getMD5.exe &...

    方式一:

    双击运行,输入字符串计算MD5值;或拖动任意文件或文件夹到到工具上,自动计算MD5值。

     

    方式二:

    拖拽文件或文件夹至getMD5.exe上,可自动计算文件或文件夹下所有文件的MD5值,保存至文件MD5.txt中

     

    方式三:

    通过cmd命令调用(类似方式二)

     

    REM 获取1.txt和files目录下所有文件的MD5值
    getMD5.exe "D:\tmp\1.txt;C:\Users\Administrator\Desktop\files"

     

     

     

    MD5计算工具下载

     

    工具源码

    
     
    using System;
    using System.Collections.Generic;
    using System.IO;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace getMD5
    {
        //示例: 
        // MD5.Encrypt("a");                        // 计算字符串MD5值
        // MD5.Encrypt(new FileInfo("D:\\1.rar"));  // 计算文件MD5值
        // MD5.Encrypt(byte[] Bytes);               // 计算Byte数组MD5值
    
        //MD5 ("") = d41d8cd98f00b204e9800998ecf8427e   
        //MD5 ("a") = 0cc175b9c0f1b6a831c399e269772661   
        //MD5 ("abc") = 900150983cd24fb0d6963f7d28e17f72   
        //MD5 ("message digest") = f96b697d7cb7938d525a2f31aaf161d0   
        //MD5 ("abcdefghijklmnopqrstuvwxyz") = c3fcd3d76192e4007dfb496cca67e13b  
        class MD5
        {
    
            #region MD5调用接口
    
            /// <summary>
            /// 计算data的MD5值
            /// </summary>
            public static string Encrypt(string data)
            {
                uint[] X = To16Array(data);
                return calculate(X);
            }
    
            /// <summary>
            /// 计算byte数组的MD5值
            /// </summary>
            public static string Encrypt(byte[] Bytes)
            {
                uint[] X = To16Array(Bytes);
                return calculate(X);
            }
    
            /// <summary>
            /// 计算文件的MD5值
            /// </summary>
            public static string Encrypt(FileInfo file)
            {
                uint[] X = To16Array(file);
                return calculate(X);
            }
    
            #endregion
    
    
            #region MD5计算逻辑
    
            /// <summary>
            /// 转化byte数组为uint数组,数组长度为16的倍数
            /// 
            /// 1、字符串转化为字节数组,每4个字节转化为一个uint,依次存储到uint数组
            /// 2、附加0x80作为最后一个字节
            /// 3、在uint数组最后位置记录文件字节长度信息
            /// </summary>
            public static uint[] To16Array(byte[] Bytes)
            {
                uint DataLen = (uint)Bytes.Length;
    
                // 计算FileLen对应的uint长度(要求为16的倍数、预留2个uint、最小为16)
                uint ArrayLen = (((DataLen + 8) / 64) + 1) * 16;     
                uint[] Array = new uint[ArrayLen];
    
                uint ArrayPos = 0;
                int pos = 0;
                uint ByteCount = 0;
                for (ByteCount = 0; ByteCount < DataLen; ByteCount++)
                {
                    // 每4个Byte转化为1个uint
                    ArrayPos = ByteCount / 4;
                    pos = (int)(ByteCount % 4) * 8;
                    Array[ArrayPos] = Array[ArrayPos] | ((uint)Bytes[ByteCount] << pos);
                }
    
                // 附加0x80作为最后一个字节,添加到uint数组对应位置
                ArrayPos = ByteCount / 4;
                pos = (int)(ByteCount % 4) * 8;
                Array[ArrayPos] = Array[ArrayPos] | ((uint)0x80 << pos);
    
                // 记录总长度信息
                Array[ArrayLen - 2] = (DataLen << 3);
                Array[ArrayLen - 1] = (DataLen >> 29);
    
                return Array;
            }
    
            /// <summary>
            /// 转化字符串为uint数组,数组长度为16的倍数
            /// 
            /// 1、字符串转化为字节数组,每4个字节转化为一个uint,依次存储到uint数组
            /// 2、附加0x80作为最后一个字节
            /// 3、在uint数组最后位置记录文件字节长度信息
            /// </summary>
            public static uint[] To16Array(string data)
            {
                byte[] datas = System.Text.Encoding.Default.GetBytes(data);
                return To16Array(datas);
            }
    
            /// <summary>
            /// 转化文件为uint数组,数组长度为16的倍数
            /// 
            /// 1、读取文件字节信息,每4个字节转化为一个uint,依次存储到uint数组
            /// 2、附加0x80作为最后一个字节
            /// 3、在uint数组最后位置记录文件字节长度信息
            /// </summary>
            public static uint[] To16Array(FileInfo info)
            {
                FileStream fs = new FileStream(info.FullName, FileMode.Open);// 读取方式打开,得到流
                int SIZE = 1024 * 1024 * 10;        // 10M缓存
                byte[] datas = new byte[SIZE];      // 要读取的内容会放到这个数组里
                int countI = 0;
                long offset = 0;
    
                // 计算FileLen对应的uint长度(要求为16的倍数、预留2个uint、最小为16)
                uint FileLen = (uint)info.Length;
                uint ArrayLen = (((FileLen + 8) / 64) + 1) * 16;     
                uint[] Array = new uint[ArrayLen];
    
                int pos = 0;
                uint ByteCount = 0;
                uint ArrayPos = 0;
                while (ByteCount < FileLen)
                {
                    if (countI == 0)
                    {
                        fs.Seek(offset, SeekOrigin.Begin);// 定位到指定字节
                        fs.Read(datas, 0, datas.Length);
    
                        offset += SIZE;
                    }
    
                    // 每4个Byte转化为1个uint
                    ArrayPos = ByteCount / 4;
                    pos = (int)(ByteCount % 4) * 8;
                    Array[ArrayPos] = Array[ArrayPos] | ((uint)datas[countI] << pos);
    
                    ByteCount = ByteCount + 1;
    
                    countI++;
                    if (countI == SIZE) countI = 0;
                }
    
                // 附加0x80作为最后一个字节,添加到uint数组对应位置
                ArrayPos = ByteCount / 4;
                pos = (int)(ByteCount % 4) * 8;
                Array[ArrayPos] = Array[ArrayPos] | ((uint)0x80 << pos);
    
                // 记录总长度信息
                Array[ArrayLen - 2] = (FileLen<< 3);
                Array[ArrayLen - 1] = (FileLen>>29);
    
                fs.Close();
                return Array;
            }
    
    
    
            private static uint F(uint x, uint y, uint z)
            {
                return (x & y) | ((~x) & z);
            }
            private static uint G(uint x, uint y, uint z)
            {
                return (x & z) | (y & (~z));
            }
    
            // 0^0^0 = 0
            // 0^0^1 = 1
            // 0^1^0 = 1
            // 0^1^1 = 0
            // 1^0^0 = 1
            // 1^0^1 = 0
            // 1^1^0 = 0
            // 1^1^1 = 1
            private static uint H(uint x, uint y, uint z)
            {
                return (x ^ y ^ z);
            }
            private static uint I(uint x, uint y, uint z)
            {
                return (y ^ (x | (~z)));
            }
    
            // 循环左移
            private static uint RL(uint x, int y)
            {
                y = y % 32;
                return (x << y) | (x >> (32 - y));
            }
    
            private static void md5_FF(ref uint a, uint b, uint c, uint d, uint x, int s, uint ac)
            {
                uint f = F(b, c, d);
                a = x + ac + a + f;
    
                a = RL(a, s);
                a = a + b;
            }
            private static void md5_GG(ref uint a, uint b, uint c, uint d, uint x, int s, uint ac)
            {
                uint g = G(b, c, d);
                a = x + ac + a + g;
    
                a = RL(a, s);
                a = a + b;
            }
            private static void md5_HH(ref uint a, uint b, uint c, uint d, uint x, int s, uint ac)
            {
                uint h = H(b, c, d);
                a = x + ac + a + h;
    
                a = RL(a, s);
                a = a + b;
            }
            private static void md5_II(ref uint a, uint b, uint c, uint d, uint x, int s, uint ac)
            {
                uint i = I(b, c, d);
                a = x + ac + a + i;
    
                a = RL(a, s);
                a = a + b;
            }
    
            private static string RHex(uint n)
            {
                string S = Convert.ToString(n, 16);
                return ReOrder(S);
            }
    
            // 16进制串重排序 67452301 -> 01234567
            private static string ReOrder(String S)
            {
                string T = "";
                for (int i = S.Length - 2; i >= -1; i = i - 2)
                {
                    if (i == -1) T = T + "0" + S[i + 1];
                    else T = T + "" + S[i] + S[i + 1];
                }
                return T;
            }
    
    
            /// <summary>
            /// 对长度为16倍数的uint数组,执行md5数据摘要,输出md5信息
            /// </summary>
            public static string calculate(uint[] x)
            {
                //uint time1 = DateTime.Now.Ticks;
    
                // 7   12  17   22
                // 5   9   14   20
                // 4   11  16   23
                // 6   10  15   21
                const int S11 = 7;
                const int S12 = 12;
                const int S13 = 17;
                const int S14 = 22;
                const int S21 = 5;
                const int S22 = 9;
                const int S23 = 14;
                const int S24 = 20;
                const int S31 = 4;
                const int S32 = 11;
                const int S33 = 16;
                const int S34 = 23;
                const int S41 = 6;
                const int S42 = 10;
                const int S43 = 15;
                const int S44 = 21;
    
                uint a = 0x67452301;
                uint b = 0xEFCDAB89;
                uint c = 0x98BADCFE;
                uint d = 0x10325476;
    
                for (int k = 0; k < x.Length; k += 16)
                {
                    uint AA = a;
                    uint BB = b;
                    uint CC = c;
                    uint DD = d;
    
                    md5_FF(ref a, b, c, d, x[k + 0], S11, 0xD76AA478);  // 3604027302
                    md5_FF(ref d, a, b, c, x[k + 1], S12, 0xE8C7B756);  // 877880356
                    md5_FF(ref c, d, a, b, x[k + 2], S13, 0x242070DB);  // 2562383102
                    md5_FF(ref b, c, d, a, x[k + 3], S14, 0xC1BDCEEE);
                    md5_FF(ref a, b, c, d, x[k + 4], S11, 0xF57C0FAF);
                    md5_FF(ref d, a, b, c, x[k + 5], S12, 0x4787C62A);
                    md5_FF(ref c, d, a, b, x[k + 6], S13, 0xA8304613);
                    md5_FF(ref b, c, d, a, x[k + 7], S14, 0xFD469501);
                    md5_FF(ref a, b, c, d, x[k + 8], S11, 0x698098D8);
                    md5_FF(ref d, a, b, c, x[k + 9], S12, 0x8B44F7AF);
                    md5_FF(ref c, d, a, b, x[k + 10], S13, 0xFFFF5BB1);
                    md5_FF(ref b, c, d, a, x[k + 11], S14, 0x895CD7BE);
                    md5_FF(ref a, b, c, d, x[k + 12], S11, 0x6B901122);
                    md5_FF(ref d, a, b, c, x[k + 13], S12, 0xFD987193);
                    md5_FF(ref c, d, a, b, x[k + 14], S13, 0xA679438E);
                    md5_FF(ref b, c, d, a, x[k + 15], S14, 0x49B40821); //3526238649
                    md5_GG(ref a, b, c, d, x[k + 1], S21, 0xF61E2562);
                    md5_GG(ref d, a, b, c, x[k + 6], S22, 0xC040B340);  //1572812400
                    md5_GG(ref c, d, a, b, x[k + 11], S23, 0x265E5A51);
                    md5_GG(ref b, c, d, a, x[k + 0], S24, 0xE9B6C7AA);
                    md5_GG(ref a, b, c, d, x[k + 5], S21, 0xD62F105D);
                    md5_GG(ref d, a, b, c, x[k + 10], S22, 0x2441453);
                    md5_GG(ref c, d, a, b, x[k + 15], S23, 0xD8A1E681);
                    md5_GG(ref b, c, d, a, x[k + 4], S24, 0xE7D3FBC8);
                    md5_GG(ref a, b, c, d, x[k + 9], S21, 0x21E1CDE6);
                    md5_GG(ref d, a, b, c, x[k + 14], S22, 0xC33707D6);
                    md5_GG(ref c, d, a, b, x[k + 3], S23, 0xF4D50D87);
                    md5_GG(ref b, c, d, a, x[k + 8], S24, 0x455A14ED);
                    md5_GG(ref a, b, c, d, x[k + 13], S21, 0xA9E3E905);
                    md5_GG(ref d, a, b, c, x[k + 2], S22, 0xFCEFA3F8);
                    md5_GG(ref c, d, a, b, x[k + 7], S23, 0x676F02D9);
                    md5_GG(ref b, c, d, a, x[k + 12], S24, 0x8D2A4C8A);
                    md5_HH(ref a, b, c, d, x[k + 5], S31, 0xFFFA3942);  // 3750198684 2314002400 1089690627 990001115 0 4 -> 2749600077
                    md5_HH(ref d, a, b, c, x[k + 8], S32, 0x8771F681);  // 990001115
                    md5_HH(ref c, d, a, b, x[k + 11], S33, 0x6D9D6122); // 1089690627
                    md5_HH(ref b, c, d, a, x[k + 14], S34, 0xFDE5380C); // 2314002400
                    md5_HH(ref a, b, c, d, x[k + 1], S31, 0xA4BEEA44);  // 555633090
                    md5_HH(ref d, a, b, c, x[k + 4], S32, 0x4BDECFA9);
                    md5_HH(ref c, d, a, b, x[k + 7], S33, 0xF6BB4B60);
                    md5_HH(ref b, c, d, a, x[k + 10], S34, 0xBEBFBC70);
                    md5_HH(ref a, b, c, d, x[k + 13], S31, 0x289B7EC6);
                    md5_HH(ref d, a, b, c, x[k + 0], S32, 0xEAA127FA);
                    md5_HH(ref c, d, a, b, x[k + 3], S33, 0xD4EF3085);
                    md5_HH(ref b, c, d, a, x[k + 6], S34, 0x4881D05);
                    md5_HH(ref a, b, c, d, x[k + 9], S31, 0xD9D4D039);
                    md5_HH(ref d, a, b, c, x[k + 12], S32, 0xE6DB99E5);
                    md5_HH(ref c, d, a, b, x[k + 15], S33, 0x1FA27CF8);
                    md5_HH(ref b, c, d, a, x[k + 2], S34, 0xC4AC5665);  // 1444303940
                    md5_II(ref a, b, c, d, x[k + 0], S41, 0xF4292244);  // 808311156
                    md5_II(ref d, a, b, c, x[k + 7], S42, 0x432AFF97);
                    md5_II(ref c, d, a, b, x[k + 14], S43, 0xAB9423A7);
                    md5_II(ref b, c, d, a, x[k + 5], S44, 0xFC93A039);
                    md5_II(ref a, b, c, d, x[k + 12], S41, 0x655B59C3);
                    md5_II(ref d, a, b, c, x[k + 3], S42, 0x8F0CCC92);
                    md5_II(ref c, d, a, b, x[k + 10], S43, 0xFFEFF47D);
                    md5_II(ref b, c, d, a, x[k + 1], S44, 0x85845DD1);
                    md5_II(ref a, b, c, d, x[k + 8], S41, 0x6FA87E4F);
                    md5_II(ref d, a, b, c, x[k + 15], S42, 0xFE2CE6E0);
                    md5_II(ref c, d, a, b, x[k + 6], S43, 0xA3014314);
                    md5_II(ref b, c, d, a, x[k + 13], S44, 0x4E0811A1);
                    md5_II(ref a, b, c, d, x[k + 4], S41, 0xF7537E82);
                    md5_II(ref d, a, b, c, x[k + 11], S42, 0xBD3AF235);
                    md5_II(ref c, d, a, b, x[k + 2], S43, 0x2AD7D2BB);
                    md5_II(ref b, c, d, a, x[k + 9], S44, 0xEB86D391);  // 4120542881
    
                    a = a + AA; //3844921825
                    b = b + BB;
                    c = c + CC;
                    d = d + DD;
                }
    
                string MD5 = RHex(a) + RHex(b) + RHex(c) + RHex(d);
    
                //uint time2 = DateTime.Now.Ticks;
                //MessageBox.Show("MD5计算耗时:" + ((time2 - time1) / 10000000f) + "秒");
    
                return MD5;
            }
    
            #endregion
    
        }
    }
    

     

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace getMD5
    {
        static class Program
        {
            /// <summary>
            /// 应用程序的主入口点。
            /// </summary>
            [STAThread]
            static void Main(string[] args)
            {
                Application.EnableVisualStyles();
                Application.SetCompatibleTextRenderingDefault(false);
    
                if (args.Length == 0) Application.Run(new Form_MD5());
                else if (args.Length == 1)
                {
                    string[] files = args[0].Split(';');
                    string filesNames = Form_MD5.toSubDirFileNames(files);
                    files = filesNames.Split(';');
    
                    string tmp = Form_MD5.getFilesMD5(files);   // 计算文件MD5值
                    Form_MD5.SaveProcess(tmp);
                }
            }
        }
    }
    
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;
    
    namespace getMD5
    {
        public partial class Form_MD5 : Form
        {
            public Form_MD5()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                textBox1.Text = MD5.Encrypt(textBox1.Text, 32);
            }
    
            private void Form_DragEnter(object sender, DragEventArgs e)
            {
                dragEnter(e);
            }
    
            private void Form_DragDrop(object sender, DragEventArgs e)
            {
                TextBox textBox = sender as TextBox;
                textBox.Text = dragDrop(e);                 // 获取拖入的文件
                string[] files = textBox.Text.Split(';');
    
                string tmp = getFilesMD5(files);            // 计算文件MD5值
                textBox1.Text = tmp;
                SaveProcess(tmp, "MD5.txt");
            }
    
    
            // 计算各文件对应的MD5值
            public static String getFilesMD5(string[] files)
            {
                string tmp = "";
    
                foreach (string file in files)
                {
                    if (System.IO.File.Exists(file))
                    {
                        string data = fileToString(file);
                        string md5 = MD5.Encrypt(data, 32);
                        tmp += "\r\n" + file + "(" + md5 + ")";
                    }
                }
    
                return tmp;
            }
    
            #region 文件读取与保存
    
            /// <summary>  
            /// 获取文件中的数据串  
            /// </summary>  
            public static string fileToString(String filePath)
            {
                string str = "";
    
                //获取文件内容  
                if (System.IO.File.Exists(filePath))
                {
                    System.IO.StreamReader file1 = new System.IO.StreamReader(filePath, Encoding.Default);//读取文件中的数据  
                    str = file1.ReadToEnd();                                            //读取文件中的全部数据  
    
                    file1.Close();
                    file1.Dispose();
                }
                return str;
            }
    
            /// <summary>
            /// 保存数据data到文件处理过程,返回值为保存的文件名
            /// </summary>  
            public static String SaveProcess(String data, String name = "", String CurDir = "")
            {
                if (CurDir.Equals("")) CurDir = System.AppDomain.CurrentDomain.BaseDirectory;           //设置当前目录  
                if (name.Equals("")) name = "MD5.txt";
                if (!System.IO.Directory.Exists(CurDir)) System.IO.Directory.CreateDirectory(CurDir);   //该路径不存在时,在当前文件目录下创建文件夹"导出.."  
    
                //不存在该文件时先创建  
                String filePath = CurDir + name;
                System.IO.StreamWriter file1 = new System.IO.StreamWriter(filePath, false);     //文件已覆盖方式添加内容  
    
                file1.Write(data);                                                              //保存数据到文件  
    
                file1.Close();                                                                  //关闭文件  
                file1.Dispose();                                                                //释放对象  
    
                return filePath;
            }
    
            #endregion
    
    
            # region 文件拖拽
    
            /// <summary>  
            /// 文件拖进事件处理:  
            /// </summary>  
            public void dragEnter(DragEventArgs e)
            {
                if (e.Data.GetDataPresent(DataFormats.FileDrop))    //判断拖来的是否是文件  
                    e.Effect = DragDropEffects.Link;                //是则将拖动源中的数据连接到控件  
                else e.Effect = DragDropEffects.None;
            }
    
            /// <summary>  
            /// 文件放下事件处理:  
            /// 放下, 另外需设置对应控件的 AllowDrop = true;   
            /// 获取的文件名形如 "d:\1.txt;d:\2.txt"  
            /// </summary>  
            public string dragDrop(DragEventArgs e)
            {
                Array file = (System.Array)e.Data.GetData(DataFormats.FileDrop);//将拖来的数据转化为数组存储
                return toSubDirFileNames(file);
            }
    
            // 获取所有files目录下的所有文件,转化为单个串
            public static string toSubDirFileNames(Array files)
            {
                StringBuilder filesName = new StringBuilder("");
    
                foreach (object I in files)
                {
                    string str = I.ToString();
    
                    System.IO.FileInfo info = new System.IO.FileInfo(str);
                    //若为目录,则获取目录下所有子文件名  
                    if ((info.Attributes & System.IO.FileAttributes.Directory) != 0)
                    {
                        str = getAllFiles(str);
                        if (!str.Equals("")) filesName.Append((filesName.Length == 0 ? "" : ";") + str);
                    }
                    //若为文件,则获取文件名  
                    else if (System.IO.File.Exists(str))
                        filesName.Append((filesName.Length == 0 ? "" : ";") + str);
                }
    
                return filesName.ToString();
            }
    
            /// <summary>  
            /// 判断path是否为目录  
            /// </summary>  
            public bool IsDirectory(String path)
            {
                System.IO.FileInfo info = new System.IO.FileInfo(path);
                return (info.Attributes & System.IO.FileAttributes.Directory) != 0;
            }
    
            /// <summary>  
            /// 获取目录path下所有子文件名  
            /// </summary>  
            public static string getAllFiles(String path)
            {
                StringBuilder str = new StringBuilder("");
                if (System.IO.Directory.Exists(path))
                {
                    //所有子文件名  
                    string[] files = System.IO.Directory.GetFiles(path);
                    foreach (string file in files)
                        str.Append((str.Length == 0 ? "" : ";") + file);
    
                    //所有子目录名  
                    string[] Dirs = System.IO.Directory.GetDirectories(path);
                    foreach (string dir in Dirs)
                    {
                        string tmp = getAllFiles(dir);  //子目录下所有子文件名  
                        if (!tmp.Equals("")) str.Append((str.Length == 0 ? "" : ";") + tmp);
                    }
                }
                return str.ToString();
            }
    
            # endregion
    
        }
    }
    
    namespace getMD5
    {
        partial class Form_MD5
        {
            /// <summary>
            /// 必需的设计器变量。
            /// </summary>
            private System.ComponentModel.IContainer components = null;
    
            /// <summary>
            /// 清理所有正在使用的资源。
            /// </summary>
            /// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
            protected override void Dispose(bool disposing)
            {
                if (disposing && (components != null))
                {
                    components.Dispose();
                }
                base.Dispose(disposing);
            }
    
            #region Windows 窗体设计器生成的代码
    
            /// <summary>
            /// 设计器支持所需的方法 - 不要
            /// 使用代码编辑器修改此方法的内容。
            /// </summary>
            private void InitializeComponent()
            {
                this.components = new System.ComponentModel.Container();
                this.button1 = new System.Windows.Forms.Button();
                this.textBox1 = new System.Windows.Forms.TextBox();
                this.toolTip1 = new System.Windows.Forms.ToolTip(this.components);
                this.SuspendLayout();
                // 
                // button1
                // 
                this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
                this.button1.Location = new System.Drawing.Point(182, 308);
                this.button1.Name = "button1";
                this.button1.Size = new System.Drawing.Size(75, 23);
                this.button1.TabIndex = 0;
                this.button1.Text = "计算MD5";
                this.button1.UseVisualStyleBackColor = true;
                this.button1.Click += new System.EventHandler(this.button1_Click);
                // 
                // textBox1
                // 
                this.textBox1.AllowDrop = true;
                this.textBox1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) 
                | System.Windows.Forms.AnchorStyles.Left) 
                | System.Windows.Forms.AnchorStyles.Right)));
                this.textBox1.Location = new System.Drawing.Point(0, 0);
                this.textBox1.Margin = new System.Windows.Forms.Padding(0);
                this.textBox1.Multiline = true;
                this.textBox1.Name = "textBox1";
                this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Both;
                this.textBox1.Size = new System.Drawing.Size(257, 305);
                this.textBox1.TabIndex = 1;
                this.toolTip1.SetToolTip(this.textBox1, "可拖动文件至此,查看文件的MD5值");
                this.textBox1.DragDrop += new System.Windows.Forms.DragEventHandler(this.Form_DragDrop);
                this.textBox1.DragEnter += new System.Windows.Forms.DragEventHandler(this.Form_DragEnter);
                // 
                // Form1
                // 
                this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
                this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
                this.ClientSize = new System.Drawing.Size(257, 335);
                this.Controls.Add(this.textBox1);
                this.Controls.Add(this.button1);
                this.Name = "Form1";
                this.Text = "MD5";
                this.ResumeLayout(false);
                this.PerformLayout();
    
            }
    
            #endregion
    
            private System.Windows.Forms.Button button1;
            private System.Windows.Forms.TextBox textBox1;
            private System.Windows.Forms.ToolTip toolTip1;
        }
    }

     

     

    工具源码下载

    开源地址

     

    展开全文
  • Android 查看应用MD5签名最简单的方法 近期公司要接入通过手机号码一键登录app的功能,这样就用到了中国移动的一键登录功能,这功能又要使用到
    
    Android 查看应用MD5签名最简单的方法
    
    

    近期公司要接入根据手机号码一键登录的功能,这就用到了中国移动的一键登录功能,这功能又要使用到apk相关的包名,MD5签名等,于是我就查询了下相关的资料,下面就给大家分享下,查看MD5签名的最简单的方法



    第一步,打开电脑🐶,运行Android Studio

    第二步,找到最右边工具栏上的Gradle,点击打开,然后依次打开app➡️android➡️signingReport,最后双击signingReport,静等运行结束

    在这里插入图片描述



    最后,你会在你的控制台看到BUILD_SUCCESSFUL,上面显示的信息就是MD5,SHA1等相关信息啦!

    在这里插入图片描述

    展开全文
  • 查看apk的MD5

    千次阅读 2018-05-07 18:54:50
    下载地址
  • 怎么查看视频的md5

    千次阅读 2019-06-30 18:45:03
    怎么查看视频的md5值 在上传背景图片时具有自动剪切功能非常方便 点击关注祥瑞自媒体,了解更多视频操作方面干货 在当前形势之下,工欲善其事必先利其,软件的作用就显得尤为重要 短视频操作中,...
  • 查看安卓签名的md5命令

    千次阅读 2018-09-21 10:58:21
    查看md5命令 举例:keytool.exe -list -v -keystore “E:\work\android__KeyStore\emeet_apk_key.jks”
  • 在Windows中查看文件的MD5

    万次阅读 2019-01-02 12:43:20
    在linux中我们可以通过md5sum命令很方便的查看文件的md5值,有时候我们想在windows上查看文件的md5值。通过certutil命令我们也可以很方便的查看文件的md5值。 命令使用方法: certutil -hashfile 文件路径/文件名称...
  • 手机怎么查看视频的MD5

    千次阅读 2019-06-30 17:17:15
    手机怎么查看视频的MD5 标题对一些排水营销账户毫不留情 点击关注祥瑞自媒体,了解更多视频操作方面干货 在当前形势之下,工欲善其事必先利其,软件的作用就显得尤为重要 短视频操作中,视频修改的...
  • cmd打开命令行,输入certutil -hashfile yourfile MD5
  • https://github.com/pandao/editor.md https://pandao.github.io/editor.md/examples/index.html Editor.md —— 国人开发 Markdown 在线编辑 Editor.md A sim
  • 因此,在此,推荐一款最好用的markdown查看器:Typora! 一、windows下使用 官网下载安装即可 https://www.typora.io/#windows 用typora打开是这样子的 嘿嘿,快去安装吧! 二、linux下使用,...
  • 打开cmd 运行到 keystore所在的目录下。 然后运行下面命令 注意 你的keystore名字是什么 debug.keystore 就替换成什么。 keytool -list -v -keystore debug.keystore ...如果你想学习如何使用Markdown编辑, ...
  • 在很多项目中使用第三方功能,比如说分享,支付,百度地图等,都要用到签名文件在官网创建应用,那如何查看签名文件信息呢,其实很简单,如下: 打开命令行:(cmd) 输入命令:keytool -list -v -keystore debug...
  • 安卓-几种查看SHA1和MD5的方法

    千次阅读 2018-09-04 10:39:21
    安卓-几种查看SHA1和MD5的方法 1、获取apk的sha1和md5 为了避免注册时弄错签名,建议直接用打包出来的apk查看签名,具体如下: 1) 将apk修改后缀为 .rar文件后解压; 2) 进入解压后的META-INF目录,该目录...
  • chrome查看md文件

    千次阅读 2019-08-06 10:15:04
    网址参考:https://jingyan.baidu.com/article/9158e000e42a56a254122801.html 注意链接中的“允许访问本地文件”:
  • 查看文件的MD5/SHA1效验值

    千次阅读 2012-02-16 08:52:32
    经常下载软件的朋友一定会发现,有很多下载软件网站都提供了MD5值。异次元的下载地址1一般也提供了MD5值校验码。那么什么是MD5值呢?MD5的全程是message-digest algorithm 5,是信息摘要算法的缩写,被广泛用于加密...
  • certutil -hashfile D:\test.txt MD5 certutil -hashfile D:\test.txt SHA1 certutil -hashfile D:\test.txt SHA256 在最新的win10系统中,我们可以在要效验的文件夹中,按快捷键:ctrl+shift+r 快速打开cmd,也...
  • 黄色部分是该jks文件的保存路径,要记住,免得查MD5码的时候找不到对应的jks文件。如果没有直接在地址中命名一个点击ok它会自动生成,划红线的地方便于测试和记忆建议全部相同,实际开发中视情况写,蓝色部分就相当...
  • 文章目录一、思维导图二、后台登录1、MD5加密2、流程图3、在main/java下创建net.tp.lesson01.util子包4、创建工具类MD5Utils5、运行MD5Utils6、改数据库密码7、修改用户接口8、运行查看效果 一、思维导图 二、后台...
  • 修改文件MD5

    千次阅读 2019-04-19 15:34:00
    1.查看文件的MD5值 (1)下载MD5Checker http://getmd5checker.com/download.html 或者 链接: https://pan.baidu.com/s/1eawHWFkSwbdR9ch9w67Bfg 提取码: f77p (2)打开MD5Checker工具,直接将要查看的文件拖...
  • python 获取字符串MD5

    万次阅读 2017-03-10 09:40:01
    工作中用到了MD5值来进行对文件校验,MD5本身就是一个很出色的算法,一定程度上解决了hash散列的冲突,关于MD5的内容网上也有很多,这里只要是进行一个实验,验证一下文件校验方面的工作,因为习惯使用了python来...
  • Md5(base64)加密与解密实战

    万次阅读 2018-06-06 10:51:01
    Md5(base64)加密与解密实战 在对某一个CMS系统进行安全检测时,通过注入点获取其管理员表中的管理员和密码数据,但由于不知道该密码数据采用何种加密方式,虽然知道CMS系统管理后台,但苦于没有破解管理员的密码...
  • Mac下修改文件的md5

    千次阅读 2019-06-18 10:16:54
    苹果机审是马甲包混淆被打回来的一大障碍,机审一般是比较文件的md5是否...1、查看 md5 值 打开 Terminal (终端),输入「md5」,空格,文件路径,最终命令类似于 $ md5 文件路径 例: $ md5 /Users/wangyongzhi...
  • 生成两个文件 ...比较 md5 校验是一样的,但是文件内容不一样。 两个程序的文件内容不一样,运行的效果打印的东西不一样,一个打印循环打印Goodbye World,一个只打印Hello world。但是md5却一样
  • 获取图片md5

    万次阅读 2016-09-22 19:41:59
    #!/usr/bin/python # -*- coding:utf-8 -*- #__author__='Kakarotto' import hashlibfd=open("1.jpg","r") fcont=fd.read() fmd5=hashlib.md5(fcont) print fmd5.hexdigest()#get 32 value
  • FCIV 一个MD5校验工具

    千次阅读 2018-12-04 21:01:35
    支持MD5或SHA1哈希算法(默认为MD5。) 可以将哈希值输出到控制台,或将哈希值和文件名存储在XML文件中 可以递归地为目录和所有子目录中的所有文件生成哈希值(例如,fciv.exe c:\ -r) 提供例外列表以指定要...
  • 简单的MD5查询工具

    千次阅读 2015-07-17 17:13:09
    这是一个MD5查询工具,输入将要加密的字符串,可以查询到其MD5值。 目前提供了32位和16位两种算法。 什么是MD5? Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用...
  • find ./ -type f -print0 | xargs -0 md5sum > ./all.md5 这个代码可以生成当前目录下所有文件的MD5码 会写到当前目录下all.md5文件 ...all.md5文件可以用记事本或者大多数文件编辑打开 ...
  • 在线预览md文件 https://markdownlivepreview.com/

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 94,319
精华内容 37,727
关键字:

md5查看器