• 关于

    aspx 编译

    的搜索结果

回答

参考:https://msdn.microsoft.com/zh-cn/library/3ex85724(v=VS.100).aspx 代码没错就是环境的问题了吧是不是哪一步错了 我没编译过MITK,但给你以下建议,不一定会解决问题: 1)注意分析错误的提示文件中,的cpp和h文件是否匹配,尤其提示的作用域,另外不要想当然的认为源码是对的,另外下载时要在官网下载,必要时进行文件校验,确认源码文件的正确,再行处理。 2)另外,链接库配置是否正确,如果链接库不正确并具有相同的类名,导致错误的文件链接,会导致编译错误。3)使用反编译工具对已经编译的dll进行核查,具体分析出错原因。 4)如果其他人可以编译成功,可尝试拷贝库文件,进行本地编译,查看是否会同样出错 你这个是不是直接打开别人的工程?如果是,那么问题很可能就是文件路径不对,导致编译时找不到源文件。解决绝方法是,新建一个工程,然后将源文件复制到新的工程中。我遇到过这样的问题,不知你的是不是。

爱吃鱼的程序员 2020-06-23 13:44:19 0 浏览量 回答数 0

问题

求教ASP.NET CS0103编译错误

小旋风柴进 2019-12-01 19:47:20 1113 浏览量 回答数 1

问题

阿里云centos7系统asp.net4.5

买醉 2019-12-01 22:06:15 4157 浏览量 回答数 0

阿里云高校特惠,助力学生创业梦!0元体验,快速入门云计算!

学生动手场景应用,快速了解并掌握云服务器的各种新奇玩法!

问题

ubuntu下TP-LINK TL-WN823N无线网卡死活打不上

a123456678 2019-12-01 20:10:30 1488 浏览量 回答数 1

问题

Asp.net程序部署云虚拟主机后无法访问,报错

拽拽小老虎 2019-12-01 21:19:36 2797 浏览量 回答数 1

回答

编译器是什么呢?VC还是mingw?比如你用VC,这是微软的手册:https://msdn.microsoft.com/zh-cn/library/dd9y37ha.aspx或许你可以这样:xx.obj : x.cpo(tab)nmake xxxx.mak

杨冬芳 2019-12-02 03:11:04 0 浏览量 回答数 0

回答

Re阿里云centos6.532位如何安装asp.net环境?(nginxMYSQL已安装) 补充:centos6.5 32位,用的是阿里云linux_setup_1.4.1一键WEB环境。 ------------------------- 回2楼ivmmff的帖子 非常感谢,我先试验下看看。 ------------------------- Re阿里云centos6.532位如何安装asp.net环境?(nginxMYSQL已安装) 非常感谢安装指导,我用centos6.5 32位镜像,根据您的提示,详细安装过程如下: 一、更新系统运行以下命令,更新系统软件包:yum -y update二、 安装编译Mono时需要的软件运行以下命令,安装必需的软件包和库:yum -y install gcc gcc-c++ bison pkgconfig glib2-devel gettext make libpng-devel libjpeg-devel libtiff-devel libexif-devel giflib-devel libX11-devel freetype-devel fontconfig-devel  cairo-devel三、编译安装libgdipluslibgdiplus是安装Mono需要的GDI+兼容API库,运行以下命令,编译安装libgdiplus-3.12:mkdir /root/Downloadscd /root/Downloadswget http://download.mono-project.com/sources/libgdiplus/libgdiplus-3.12.tar.gztar -xvzf libgdiplus-3.12.tar.gzcd libgdiplus-3.12./configure --prefix=/usr/localmake && make install四、编译安装Mono运行以下命令,从源码编译安装4.0.3.19Mono:cd /root/Downloadswget http://download.mono-project.com/sources/mono/mono-4.0.3.19.tar.bz2tar -jxvf mono-4.0.3.19.tar.bz2cd mono-4.0.3./autogen.sh./configure --prefix=/usrsed -i 's/define HAVE_LOCALCHARSET_H 1/define HAVE_LOCALCHARSET_H 0/g' eglib/config.hmake && make installldconfig输入 mono -V 如有mono版本信息,则安装成功。五、编译安装Jexus运行以下命令,从源码编译安装Jexus-5.6.3:cd /root/Downloadswget http://jaist.dl.sourceforge.net/project/jexus-webserver/jexus-5.6.3.tar.gztar -zvxf jexus-5.6.3.tar.gzcd jexus-5.6.3./install /usr/local/jexus六、测试通过以下命令可以启动/停止/重启Jexus服务:/usr/local/jexus/jws start/usr/local/jexus/jws stop/usr/local/jexus/jws restart通过以下命令可以启动/停止/重启指定网站:/usr/local/jexus/jws start <siteName>/usr/local/jexus/jws stop <siteName>/usr/local/jexus/jws restart <siteName> 现在http://wap.dzbfsj.com/info打开,测试正常,但不知道怎样才能在运行ASP.NET网站的同时,运行php呢? ------------------------- Re阿里云centos6.532位如何安装asp.net环境?(nginxMYSQL已安装) 用不了现成的aspx源码。。。这真不是一般人能弄成的。 http://wap.dzbfsj.com/index.aspx ------------------------- Re阿里云centos6.532位如何安装asp.net环境?(nginxMYSQL已安装) 不支持ACCES数据库,实用性不大。 ------------------------- 回22楼买醉的帖子 mdbtools网上找不到任何有用的教程啊,都是非常古老的。 ------------------------- 回 24楼(买醉) 的帖子 谢谢提醒,有空我再试试,反正另一个ECS就是不停地折腾做试验的。

秋日的私语 2019-12-02 02:55:04 0 浏览量 回答数 0

回答

如果修改的是静态或全局变量,编辑并继续(EditandContinue)这个功能不可用。可以终止调试并重新编译工程。 详细可参考:https://msdn.microsoft.com/en-us/library/windows/hardware/b0dc16y5(v=vs.100).aspx 如果对您有帮助,请采纳答案好吗,谢谢!

爱吃鱼的程序员 2020-06-23 20:27:54 0 浏览量 回答数 0

问题

STL sort函数不支持3个参数?报错

爱吃鱼的程序员 2020-06-14 22:10:13 0 浏览量 回答数 1

回答

你这个是因为AS在编译的时候需要用到gradle,而默认的是联网获取,但是因为谷歌相关网站被墙了,所以根据网址访问不到,然后AS就会一直等待。解决办法:1.将gradle的编译路径设为本地,如果你本地没有合适的gradle版本(注意你的build.gradle里面的版本),参照这个网址下载:https://services.gradle.org/distributions/2.设置VPN,但设置这个比较麻烦,购买有哦需要花钱,不建议。 3.更改本地hosts文件,一般的路径为:C:\Windows\System32\drivers\etc,在里面添加:203.208.41.78dl.google.com74.125.68.93dl-ssl.google.com由于这个是通过代理服务器访问,所以IP一直在变,如果哪天发现又不能访问了,就去这个网站Ping一下,找到一下正确IP:**http://tool.chinaz.com/map.aspx** 这个是因为你gradle需要联网下载的,我也遇到这个问题,你可以从网上下载你的as对应的gradle版本,我的是gradle-4.0-all然后把它放到C:\Users\用户名.gradle\wrapper\dists路径下。然后断开网络,打开你的as,在设置里面查找gradle,把gradle路径指向你刚才的路径,选择下面的offline,然后重启as就好了。

爱吃鱼的程序员 2020-06-23 11:44:32 0 浏览量 回答数 0

回答

Re有没有人在CentOS6上进行过全能空间的搭建!? 我在1台机器上搭建过  php/jsp/asp.net/asp/cgi/Python 6种环境,同时使用80端口输出 搭建asp.net才用mono.搭建asp是使用IASP,IASP不是免费软件,网上只有限时的IASP2.1版 一段时间后就要重新编译IASP,而且官网已经不存在了,想买正式版都没地方买 http://test.7qy.com/php/index.php http://test.7qy.com/jsp/index.jsp http://test.7qy.com/aspx/index.aspx http://test.7qy.com/python/index.py asp和cgi没装,比较消耗资源 如果只是想体验的话,可以下我做的centos 全能服务器一键安装包,http://blog.7qy.com/html/1403.html 只适合体验,不要做生产环境 唠叨一句,IASP需要依赖JDK才能运行,也就是说首先要安装JAVA环境 ------------------------- 回 6楼(pablo) 的帖子 mono不是很复杂,如果单纯在linux使用.net可以mono+Jexus 当然Jexus也可以跑php 如果用nginx就需要mono+xsp

买醉 2019-12-02 02:48:10 0 浏览量 回答数 0

问题

MySQLDriverCS,dll文件在64位机器编译的问题

lewisyun 2019-12-01 20:03:08 9618 浏览量 回答数 0

回答

估计是有些库添加异常(或者onvif的一些wsdl文件你没有下全),以上报错提示未定义的外部对象 WSDL文件要到哪儿去下载呢?我看onvif官方网站上似乎没有啊!我用的这个是在CSDN上面下载的。 http://www.onvif.org/Documents/Specifications.aspx 在最下面,所有的WSDL文件都在 不知道你有没有解决这个问题啊。  同样的问题,也困扰我两天呀。愁死了。 刚刚终于找到解决的办法了。你在gsoap目录下找到duration.c文件,然后复制到当前工程下。就能通过了。 正在研究gsoap,刚好看到这个问题的原因了。这个问题是因为在gSOAP工具中提供的typemap.dat文件中有下面的类型转换规则: <preclass="brush:shell;toolbar:true;auto-links:false;">#UncommentthelinebelowtouseLONG64intforxsd:duration#(withhighmsprecision)#Mustcompileandlinkcustom/duration.cwiththeprojectxsd__duration=#import"custom/duration.h"|xsd__duration而你在工程中没有加入和编译链接gsoap目录下的custon/duration.c文件。因此解决办法有两个: 将custom/duration.c加入到工程中,楼上的解决方法。修改你的typemap.dat文件中的上述转换规则,不使用LONG64,只使用long类型。

爱吃鱼的程序员 2020-06-22 22:31:52 0 浏览量 回答数 0

问题

【干货】ModSecurity - 针对中小站长高效、免费waf组件

觉宇 2019-12-01 21:06:22 5363 浏览量 回答数 1

问题

【云计算的1024种玩法】回忆经典,用虚拟主机重建复古DZ和无心宠物

妙正灰 2019-12-01 21:34:37 2696 浏览量 回答数 0

回答

首先如何购买ECS?发现有些人购买5G硬盘,我个人认为买硬盘应该购买20以上!这样以后好处理! 进入 http://www.aliyun.com/product/ecs/?spm=5176.7189909.201.2.CVdddr 点击后面后选择配置,你也可以选择镜像市场! 付款后就可以开通了!!进入控制台: 点击进入管理面板: 如果你要更换系统,要选停止服务器,再进行更换!! ------------------------- 接下来我们来挂载硬盘: (注意事项)如果你没购买数据盘,这步你就不用管了直接跳过!!) 版本的挂载方法: 下载登入服务器的软件:http://pan.baidu.com/s/1pa9PY 可以参考这个教程:http://bbs.aliyun.com/read/146157.html 先填写登入的服务器信息: [attachment=57730] 选择语言 [attachment=57731] 保存并连接 [attachment=57732] Linux硬盘挂载是比较常见的管理操作之一。默认情况下数据盘没有挂载,需要手动挂载到系统中。     具体操作是分三步:     硬盘挂载1)需要对磁盘进行格式化     硬盘挂载2)格式化后硬盘挂载到需要的挂载点       硬盘挂载3)最后还需要添加分区启动表,以便下次系统启动随机自动硬盘挂载。   硬盘挂载详细图文教程如下: 硬盘挂载1、查看数据盘在没有分区和格式化数据盘之前,使用 “ df -lh ”命令,是无法看到数据盘的,可以使用“fdisk -l”命令查看 [attachment=57733] 查看新加的硬盘是 /dev/xvdb 硬盘挂载2:将未使用的磁盘进行格式化,操作数据盘符前,请自行确认磁盘是否有使用过,如有重要数据请谨慎操作,以免导致数据丢失,带来不必要的麻烦。具体格式化命令为: mkfs.ext3 /dev/xvdb  ,即为正在格式化中。这个时候请耐心等待格式化完毕(时间较久)。 [attachment=57734] 硬盘挂载3:将格式化完的磁盘进行硬盘挂载,phpstudy 安装前,先在服务器上创建一个需要挂载的挂载点,在根目录下创建一个phpstudy目录。    默认情况下,跳转到根目录的命令为:cd ..          创建目录命令为: mkdir /phpstudy   硬盘挂载到phpstudy 目录, 硬盘挂载命令: mount /dev/xvdb  /phpstudy /  、 修改fstab,以便系统启动时自动硬盘挂载,添加分区信息使用“echo '/dev/xvdb   /phpstudy ext3    defaults    0  0' >> /etc/fstab”(不含引号)命令写入新分区信息。 [attachment=57735] 硬盘挂载4:执行:init 6 进行优雅重启服务器。 硬盘挂载5:重启服务器后,输入命令: df -lh 查看第2块磁盘是否有正常进行硬盘挂载,硬盘挂载正常的话您会看到,这样第2块盘就挂载好了。 [attachment=57736] (注意事项)如果你没购买数据盘,上面你就不用管了直接跳过!!) 接下来安装phpstudy一键包: 在线安装版: wget -c http://lamp.phpstudy.net/phpstudy.bin chmod +x phpstudy.bin    #权限设置 ./phpstudy.bin     #运行安装 离线完整版: wget -c http://lamp.phpstudy.net/phpstudy-all.bin chmod +x phpstudy-all.bin       #权限设置 ./phpstudy-all.bin     #运行安装 我用的是 在线 [font=Tahoma, 'Microsoft Yahei', Simsun]安装版: wget -c http://lamp.phpstudy.net/phpstudy.bin chmod +x phpstudy.bin    #权限设置 ./phpstudy.bin     #运行安装 [attachment=57737] 选择你要安装的版本:中文大家都看得懂: [attachment=57739] 出现这样的信息。。说明你安装完毕了 [attachment=57742] 这时候你可以用IP打开网站了会出现探针页面 用IP加phpMyAdmin就可以访问数据管理:默认用户和密码都是root,请自己修改 默认没有FTP 如果需要可以安装: wget -c http://lamp.phpstudy.net/phpstudy-ftpd.sh chmod +x phpstudy-ftpd.sh    #权限设置 ./phpstudy-ftpd.sh 下图说明FTP安装完毕“ [attachment=57744] 如何切换php版: 假如你先安装的apache+php5.3 想切换成nginx+php5.4 你就再走一次./phpstudy.bin 但是你会发现有一行是否安装mysql提示选不安装 这样只需要编译nginx+php5.4 从而节省时间,这样只需要几分钟即可。 使用说明: 服务进程管理:phpstudy (start|stop|restart|uninstall) 站点主机管理:phpstudy (add|del|list) ftpd用户管理:phpstudy ftp (add|del|list) 如何建站: 输入:phpstudy add 再输入你的域名就可以了。。。 [attachment=57745] 开通FTP 1:输入phpstudy ftp add 2:输入FTP用户名 3:输入密码 4:输入目录(注意是绝对目录)就是你上面添加网站的目录 [attachment=57746] del(修改)list(列出网站) 这时你网站和FTP建好了,你再建个数据库,上传你的网站源码就可以安装了!! ------------------------- phpStudy(php一键安装包)『软件简介』该程序包集成最新的Apache+Nginx+LightTPD+PHP+MySQL+phpMyAdmin+Zend Optimizer+Zend Loader,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境。该程序绿色小巧简易迷你仅有35M,有专门的控制面板。总之学习PHP只需一个包。对学习PHP的新手来说,WINDOWS下环境配置是一件很困难的事;对老手来说也是一件烦琐的事。因此无论你是新手还是老手,该程序包都是一个不错的选择。全面适合 Win2000/XP/2003/win7/win8/win2008 操作系统 ,支持Apache、IIS、Nginx和LightTPD。首先我们进入Win2000/XP/2003/win7/win8/win2008 操作系统进行下载:下载地址是:下载地址解压版:http://www.phpstudy.net/phpstudy/phpStudy.zip下载地址安装版:http://www.phpstudy.net/phpstudy/phpStudy-install.zipMariaDB版下载:http://www.phpstudy.net/phpstudy/phpStudy-mariadb.zip新手强烈推荐使用phpStudy Lite,简单解压即可。phpStudy Lite下载:http://www.phpstudy.net/phpstudy/phpStudyLite.zipJspStudy(jsp环境集成包)下载:http://www.phpstudy.net/phpstudy/JspStudy.zipJspStudy(jsp环境集成包) jdk+tomcat6+tomcat7+mysql+apache下载保存到你想要的硬盘解压后双击:phpStudy2014.exe点击运行按照提示进行解压或安装:如果你没有数据盘可以选择安装或解压到C盘解压中。。点击是这事提示没有安装VC9运行库请到32位的VC9运行库下载:http://www.microsoft.com/zh-CN/download/details.aspx?id=558264位的VC9运行库下载:http://www.microsoft.com/zh-CN/download/details.aspx?id=15336VC11运行库下载:http://www.microsoft.com/zh-CN/download/details.aspx?id=30679不能启动 参照:http://www.phpstudy.net/a.php/184.html启动成功:选择版本:如果要IIS请安装IIS添加网站。网站的目录可以自由选择:如果有数据盘请挂载添加---管理工具--计算机管理点击磁盘管理:硬盘添加完毕了!!!如何要IIS请安装IIS:控制面板--添加和删除程序!!就可以安装完毕了 ------------------------- 占位4 ------------------------- 占位5

梦丫头 2019-12-01 23:55:46 0 浏览量 回答数 0

回答

RSA算法非常简单,概述如下: 找两素数p和q 取n=p*q 取t=(p-1)*(q-1) 取任何一个数e,要求满足e<t并且e与t互素(就是最大公因数为1) 取d*e%t==1 这样最终得到三个数: n d e 设消息为数M (M <n) 设c=(M**d)%n就得到了加密后的消息c 设m=(c**e)%n则 m == M,从而完成对c的解密。 注:**表示次方,上面两式中的d和e可以互换。 在对称加密中: n d两个数构成公钥,可以告诉别人; n e两个数构成私钥,e自己保留,不让任何人知道。 给别人发送的信息使用e加密,只要别人能用d解开就证明信息是由你发送的,构成了签名机制。 别人给你发送信息时使用d加密,这样只有拥有e的你能够对其解密。 rsa的安全性在于对于一个大数n,没有有效的方法能够将其分解 从而在已知n d的情况下无法获得e;同样在已知n e的情况下无法 求得d。 <二>实践 接下来我们来一个实践,看看实际的操作: 找两个素数: p=47 q=59 这样 n=p*q=2773 t=(p-1)*(q-1)=2668 取e=63,满足e<t并且e和t互素 用perl简单穷举可以获得满主 e*d%t ==1的数d: C:\Temp>perl -e "foreach $i (1..9999){ print($i),last if $i*63%2668==1 }" 847 即d=847 最终我们获得关键的 n=2773 d=847 e=63 取消息M=244我们看看 加密: c=M**d%n = 244**847%2773 用perl的大数计算来算一下: C:\Temp>perl -Mbigint -e "print 244**847%2773" 465 即用d对M加密后获得加密信息c=465 解密: 我们可以用e来对加密后的c进行解密,还原M: m=c**e%n=465**63%2773 : C:\Temp>perl -Mbigint -e "print 465**63%2773" 244 即用e对c解密后获得m=244 , 该值和原始信息M相等。 <三>字符串加密 把上面的过程集成一下我们就能实现一个对字符串加密解密的示例了。 每次取字符串中的一个字符的ascii值作为M进行计算,其输出为加密后16进制 的数的字符串形式,按3字节表示,如01F 代码如下: #!/usr/bin/perl -w #RSA 计算过程学习程序编写的测试程序 #watercloud 2003-8-12 # use strict; use Math::BigInt; my %RSA_CORE = (n=>2773,e=>63,d=>847); #p=47,q=59 my $N=new Math::BigInt($RSA_CORE{n}); my $E=new Math::BigInt($RSA_CORE{e}); my $D=new Math::BigInt($RSA_CORE{d}); print "N=$N D=$D E=$E\n"; sub RSA_ENCRYPT { my $r_mess = shift @_; my ($c,$i,$M,$C,$cmess); for($i=0;$i < length($$r_mess);$i++) { $c=ord(substr($$r_mess,$i,1)); $M=Math::BigInt->new($c); $C=$M->copy(); $C->bmodpow($D,$N); $c=sprintf "%03X",$C; $cmess.=$c; } return \$cmess; } sub RSA_DECRYPT { my $r_mess = shift @_; my ($c,$i,$M,$C,$dmess); for($i=0;$i < length($$r_mess);$i+=3) { $c=substr($$r_mess,$i,3); $c=hex($c); $M=Math::BigInt->new($c); $C=$M->copy(); $C->bmodpow($E,$N); $c=chr($C); $dmess.=$c; } return \$dmess; } my $mess="RSA 娃哈哈哈~~~"; $mess=$ARGV[0] if @ARGV >= 1; print "原始串:",$mess,"\n"; my $r_cmess = RSA_ENCRYPT(\$mess); print "加密串:",$$r_cmess,"\n"; my $r_dmess = RSA_DECRYPT($r_cmess); print "解密串:",$$r_dmess,"\n"; #EOF 测试一下: C:\Temp>perl rsa-test.pl N=2773 D=847 E=63 原始串:RSA 娃哈哈哈~~~ 加密串:5CB6CD6BC58A7709470AA74A0AA74A0AA74A6C70A46C70A46C70A4 解密串:RSA 娃哈哈哈~~~ C:\Temp>perl rsa-test.pl 安全焦点(xfocus) N=2773 D=847 E=63 原始串:安全焦点(xfocus) 加密串:3393EC12F0A466E0AA9510D025D7BA0712DC3379F47D51C325D67B 解密串:安全焦点(xfocus) <四>提高 前面已经提到,rsa的安全来源于n足够大,我们测试中使用的n是非常小的,根本不能保障安全性, 我们可以通过RSAKit、RSATool之类的工具获得足够大的N 及D E。 通过工具,我们获得1024位的N及D E来测试一下: n=0x328C74784DF31119C526D18098EBEBB943B0032B599CEE13CC2BCE7B5FCD15F90B66EC3A85F5005D BDCDED9BDFCB3C4C265AF164AD55884D8278F791C7A6BFDAD55EDBC4F017F9CCF1538D4C2013433B383B 47D80EC74B51276CA05B5D6346B9EE5AD2D7BE7ABFB36E37108DD60438941D2ED173CCA50E114705D7E2 BC511951 d=0x10001 e=0xE760A3804ACDE1E8E3D7DC0197F9CEF6282EF552E8CEBBB7434B01CB19A9D87A3106DD28C523C2995 4C5D86B36E943080E4919CA8CE08718C3B0930867A98F635EB9EA9200B25906D91B80A47B77324E66AFF2 C4D70D8B1C69C50A9D8B4B7A3C9EE05FFF3A16AFC023731D80634763DA1DCABE9861A4789BD782A592D2B 1965 设原始信息 M=0x11111111111122222222222233333333333 完成这么大数字的计算依赖于大数运算库,用perl来运算非常简单: A) 用d对M进行加密如下: c=M**d%n : C:\Temp>perl -Mbigint -e " $x=Math::BigInt->bmodpow(0x11111111111122222222222233 333333333, 0x10001, 0x328C74784DF31119C526D18098EBEBB943B0032B599CEE13CC2BCE7B5F CD15F90B66EC3A85F5005DBDCDED9BDFCB3C4C265AF164AD55884D8278F791C7A6BFDAD55EDBC4F0 17F9CCF1538D4C2013433B383B47D80EC74B51276CA05B5D6346B9EE5AD2D7BE7ABFB36E37108DD6 0438941D2ED173CCA50E114705D7E2BC511951);print $x->as_hex" 0x17b287be418c69ecd7c39227ab681ac422fcc84bb35d8a632543b304de288a8d4434b73d2576bd 45692b007f3a2f7c5f5aa1d99ef3866af26a8e876712ed1d4cc4b293e26bc0a1dc67e247715caa6b 3028f9461a3b1533ec0cb476441465f10d8ad47452a12db0601c5e8beda686dd96d2acd59ea89b91 f1834580c3f6d90898 即用d对M加密后信息为: c=0x17b287be418c69ecd7c39227ab681ac422fcc84bb35d8a632543b304de288a8d4434b73d2576bd 45692b007f3a2f7c5f5aa1d99ef3866af26a8e876712ed1d4cc4b293e26bc0a1dc67e247715caa6b 3028f9461a3b1533ec0cb476441465f10d8ad47452a12db0601c5e8beda686dd96d2acd59ea89b91 f1834580c3f6d90898 B) 用e对c进行解密如下: m=c**e%n : C:\Temp>perl -Mbigint -e " $x=Math::BigInt->bmodpow(0x17b287be418c69ecd7c39227ab 681ac422fcc84bb35d8a632543b304de288a8d4434b73d2576bd45692b007f3a2f7c5f5aa1d99ef3 866af26a8e876712ed1d4cc4b293e26bc0a1dc67e247715caa6b3028f9461a3b1533ec0cb4764414 65f10d8ad47452a12db0601c5e8beda686dd96d2acd59ea89b91f1834580c3f6d90898, 0xE760A 3804ACDE1E8E3D7DC0197F9CEF6282EF552E8CEBBB7434B01CB19A9D87A3106DD28C523C29954C5D 86B36E943080E4919CA8CE08718C3B0930867A98F635EB9EA9200B25906D91B80A47B77324E66AFF 2C4D70D8B1C69C50A9D8B4B7A3C9EE05FFF3A16AFC023731D80634763DA1DCABE9861A4789BD782A 592D2B1965, 0x328C74784DF31119C526D18098EBEBB943B0032B599CEE13CC2BCE7B5FCD15F90 B66EC3A85F5005DBDCDED9BDFCB3C4C265AF164AD55884D8278F791C7A6BFDAD55EDBC4F017F9CCF 1538D4C2013433B383B47D80EC74B51276CA05B5D6346B9EE5AD2D7BE7ABFB36E37108DD60438941 D2ED173CCA50E114705D7E2BC511951);print $x->as_hex" 0x11111111111122222222222233333333333 (我的P4 1.6G的机器上计算了约5秒钟) 得到用e解密后的m=0x11111111111122222222222233333333333 == M C) RSA通常的实现 RSA简洁幽雅,但计算速度比较慢,通常加密中并不是直接使用RSA 来对所有的信息进行加密, 最常见的情况是随机产生一个对称加密的密钥,然后使用对称加密算法对信息加密,之后用 RSA对刚才的加密密钥进行加密。 最后需要说明的是,当前小于1024位的N已经被证明是不安全的 自己使用中不要使用小于1024位的RSA,最好使用2048位的。 ---------------------------------------------------------- 一个简单的RSA算法实现JAVA源代码: filename:RSA.java /* * Created on Mar 3, 2005 * * TODO To change the template for this generated file go to * Window - Preferences - Java - Code Style - Code Templates */ import java.math.BigInteger; import java.io.InputStream; import java.io.OutputStream; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.FileWriter; import java.io.FileReader; import java.io.BufferedReader; import java.util.StringTokenizer; /** * @author Steve * * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */ public class RSA { /** * BigInteger.ZERO */ private static final BigInteger ZERO = BigInteger.ZERO; /** * BigInteger.ONE */ private static final BigInteger ONE = BigInteger.ONE; /** * Pseudo BigInteger.TWO */ private static final BigInteger TWO = new BigInteger("2"); private BigInteger myKey; private BigInteger myMod; private int blockSize; public RSA (BigInteger key, BigInteger n, int b) { myKey = key; myMod = n; blockSize = b; } public void encodeFile (String filename) { byte[] bytes = new byte[blockSize / 8 + 1]; byte[] temp; int tempLen; InputStream is = null; FileWriter writer = null; try { is = new FileInputStream(filename); writer = new FileWriter(filename + ".enc"); } catch (FileNotFoundException e1){ System.out.println("File not found: " + filename); } catch (IOException e1){ System.out.println("File not found: " + filename + ".enc"); } /** * Write encoded message to 'filename'.enc */ try { while ((tempLen = is.read(bytes, 1, blockSize / 8)) > 0) { for (int i = tempLen + 1; i < bytes.length; ++i) { bytes[i] = 0; } writer.write(encodeDecode(new BigInteger(bytes)) + " "); } } catch (IOException e1) { System.out.println("error writing to file"); } /** * Close input stream and file writer */ try { is.close(); writer.close(); } catch (IOException e1) { System.out.println("Error closing file."); } } public void decodeFile (String filename) { FileReader reader = null; OutputStream os = null; try { reader = new FileReader(filename); os = new FileOutputStream(filename.replaceAll(".enc", ".dec")); } catch (FileNotFoundException e1) { if (reader == null) System.out.println("File not found: " + filename); else System.out.println("File not found: " + filename.replaceAll(".enc", "dec")); } BufferedReader br = new BufferedReader(reader); int offset; byte[] temp, toFile; StringTokenizer st = null; try { while (br.ready()) { st = new StringTokenizer(br.readLine()); while (st.hasMoreTokens()){ toFile = encodeDecode(new BigInteger(st.nextToken())).toByteArray(); System.out.println(toFile.length + " x " + (blockSize / 8)); if (toFile[0] == 0 && toFile.length != (blockSize / 8)) { temp = new byte[blockSize / 8]; offset = temp.length - toFile.length; for (int i = toFile.length - 1; (i <= 0) && ((i + offset) <= 0); --i) { temp[i + offset] = toFile[i]; } toFile = temp; } /*if (toFile.length != ((blockSize / 8) + 1)){ temp = new byte[(blockSize / 8) + 1]; System.out.println(toFile.length + " x " + temp.length); for (int i = 1; i < temp.length; i++) { temp[i] = toFile[i - 1]; } toFile = temp; } else System.out.println(toFile.length + " " + ((blockSize / 8) + 1));*/ os.write(toFile); } } } catch (IOException e1) { System.out.println("Something went wrong"); } /** * close data streams */ try { os.close(); reader.close(); } catch (IOException e1) { System.out.println("Error closing file."); } } /** * Performs <tt>base</tt>^<sup><tt>pow</tt></sup> within the modular * domain of <tt>mod</tt>. * * @param base the base to be raised * @param pow the power to which the base will be raisded * @param mod the modular domain over which to perform this operation * @return <tt>base</tt>^<sup><tt>pow</tt></sup> within the modular * domain of <tt>mod</tt>. */ public BigInteger encodeDecode(BigInteger base) { BigInteger a = ONE; BigInteger s = base; BigInteger n = myKey; while (!n.equals(ZERO)) { if(!n.mod(TWO).equals(ZERO)) a = a.multiply(s).mod(myMod); s = s.pow(2).mod(myMod); n = n.divide(TWO); } return a; } } 在这里提供两个版本的RSA算法JAVA实现的代码下载: 1. 来自于 http://www.javafr.com/code.aspx?ID=27020 的RSA算法实现源代码包: http://zeal.newmenbase.net/attachment/JavaFR_RSA_Source.rar 2. 来自于 http://www.ferrara.linux.it/Members/lucabariani/RSA/implementazioneRsa/ 的实现: http://zeal.newmenbase.net/attachment/sorgentiJava.tar.gz - 源代码包 http://zeal.newmenbase.net/attachment/algoritmoRSA.jar - 编译好的jar包 另外关于RSA算法的php实现请参见文章: php下的RSA算法实现 关于使用VB实现RSA算法的源代码下载(此程序采用了psc1算法来实现快速的RSA加密): http://zeal.newmenbase.net/attachment/vb_PSC1_RSA.rar RSA加密的JavaScript实现: http://www.ohdave.com/rsa/ 参考资料:http://www.lenovonet.com/product/showarticle.asp?id=118

琴瑟 2019-12-02 01:27:17 0 浏览量 回答数 0
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 企业信息查询 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 企业建站模板