美文网首页
TCTF - Elements

TCTF - Elements

作者: 喝豆腐脑加糖 | 来源:发表于2019-03-31 23:07 被阅读0次

数学忘完了是真的难受

图片.png 图片.png v23中保存着另外一边

大概跟一下程序,能看出是三角形的判断。下方的公式可以得到一个方程,其中 " 0x391BC2164F0ALL " 应当是最短的一边,两个浮点数为内外切圆的半径。

想办法计算出另外两边

== 数学题就用数学的格式来写

解:

图片.png

已知:
a1=62791383142154LL
内切圆半径r = 1.940035480806554e13
外切园半径R = 4.777053952827391e13

设三角形的面积为S ,第三边为a3,另外一条为a2

求:另外两边

因为:


图片.png

s = sqrt(4.0 * a1_2 * a1_2 * a2_1 * a2_1 - p1 * p1) * 0.25

得:
p1 = 2S/(a1+a2+a3)
p3 = a1a2a3/(4S)
所以:
r=2S/(a1+a2+a3) = 1.940035480806554e13
R=a1
a2* a3/(4*S) = 4.777053952827391e13

由正弦定理得 :
sin A = a/(2R)
又因为:
cos A = (b ^ 2+c ^2-a ^ 2)/(2bc)= sqrt(1-(sin A)^2)

联立得:

S = a1*a2*a3/4R = (a1 + a2 + a3)r/2
a1*a2*a3 = 2Rr(a1+a2+a3)=2Rr(a+p2)

所以:(随便联立列出方程,脚本删完不想写了)

from math import sqrt 

r = 1.940035480806554e13
R = 4.777053952827391e13
a1 = 62791383142154
sin= a / (2 * R)
cos = 1 - sin**2
cos = sqrt(cos)
b+c = a+4*R*r*(1+cosA)/a
bc = 2*R*r*(a+T2)/a #bc
 c-b= sqrt(T2*T2-4*T3)

a2 = int((bc+b+c)/2)
a3 = int((b+c-bc)/2)
print hex(c),' ',hex(b)

flag{391bc2164f0a-4064e4798769-56e0de138176}

相关文章

  • TCTF - Elements

    数学忘完了是真的难受 大概跟一下程序,能看出是三角形的判断。下方的公式可以得到一个方程,其中 " 0x391BC2...

  • TCTF 2019

    第一天被llvm卡住了,没搜到源码,理不清内存分配机制,但是利用上只差一步,心态崩了,导致比赛周末只看了两道pwn...

  • HTML-Semantic Elements

    HTML Semantic Elements Semantic elements = elements with ...

  • TCTF Finals in Shanghai

    上海之行结束,又一次感受到自己和master of pwn的差距,细数下来,近半年的比赛好像都没去复现,其...

  • Arrays

    CREATING ARRAYS ACCESSING ELEMENTS MANIPULATING ELEMENTS ...

  • php7的opcache导致的getshell

    以TCTF2018的ezdoor为例 相关WP正解https://github.com/LyleMi/My-CTF...

  • React的组件,元素和实例

    React Components, Elements, and Instances Elements Descri...

  • 排序

    //快速排序 functionquickSort(elements) { if(elements.length<=...

  • HTML--块级元素、行内元素汇总

    Examples of block level elements Examples of inline elements

  • 翻译练习 react-Rendering Elements

    Rendering Elements渲染组件 Elements are the smallest building...

网友评论

      本文标题:TCTF - Elements

      本文链接:https://www.haomeiwen.com/subject/zcsubqtx.html